C语言(Linux)中常用到的函数
在接触Linux C之前,我比较少用到的函数,都会记录在这里。(持续更新中……)
在学习malloc()函数原理性实现时,
size_t:是一种数据类型,标准C库中定义的一种类型,近似于unsigned int,在32位系统中为4个字节,在64位中卫8个字节。在C中,它包含在stddef.h中,在C++中包含在cstddef中。sizeof()得到的结果就是size_t型。运用它,利于程序的可移植性。
#include <stdio.h>
int main(void)
{
size_t a,b;
unsigned int sum;
a=;
b=;
sum=a+b;
printf("a=%d,sum=%d\n",a,sum);
return ;
}
sbrk(incr):不是系统调用,而是C库函数。用于堆拓展,增加程序可用数据段空间,增加大小由参数incr决定。成功返回一个指向新的内存空间的指针,失败则返回-1。
shell环境中,
int main(int argc, char * argv[])
argc表示参数的个数,包括程序的路径; *argv[]表示指向参数的各个指针所构成的数组。简单一点来理解就是,argc是参数个数,而argv是参数内容。
rindex():其原型为char * rindex(const char *s, char 'c');用于匹配单个字符的,返回的是字符指针,指向最后匹配正确的字符及之后的字符串。例:*s="huang yong hao",则rindex(s,'a')返回的是*p=ao,如果匹配不成功则返回'\0'。
此函数的一个应用就是在linux中提取程序的文件名,寻找最后一个'/',则此'/'之后就是程序的文件名了。
实现:
#include<stdio.h>
#include<string.h>
char * basename(char *full_name){ //通过完整路径(可以由argv[0]直接得出)提取程序的文件名(Linux下)
char *p;
p=rindex(full_name,'\'); //从full_name中匹配出最后一个'/',然后返回'/'之后的内容
if(p=='\0') //本身就是文件名了
p=fullname;
else p++; //得到文件名的起始位置
return p;
} int main(void)
{
char *p;
p=basename(argv[]);
printf("file name is %s\n",p);
return ;
}
C语言(Linux)中常用到的函数的更多相关文章
- Python常用模块中常用内置函数的具体介绍
Python作为计算机语言中常用的语言,它具有十分强大的功能,但是你知道Python常用模块I的内置模块中常用内置函数都包括哪些具体的函数吗?以下的文章就是对Python常用模块I的内置模块的常用内置 ...
- 转 Linux中常用操作命令
http://blog.csdn.net/ljianhui/article/details/11100625 初窥Linux 之 我最常用的20条命令 玩过Linux的人都会知道,Linux中的命令的 ...
- 【转载】Linux中常用操作命令
说明:开始学习linux系统,为了方便查看,特转载一篇Linux中常用操作命令,转载地址:http://www.cnblogs.com/laov/p/3541414.html 正文: Linux简介及 ...
- php中常用的正则表达式函数
php中常用的正则表达式函数 * preg_match() * preg_match_all() * preg_replace() * preg_filter() * preg_grep() * pr ...
- Linux中常用压缩打包工具
Linux中常用压缩打包工具 压缩打包是常用的功能,在linux中目前常用的压缩工具有gzip,bzip2以及后起之秀xz.本文将介绍如下的工具常见压缩.解压缩工具以及打包工具tar. gzip2 直 ...
- iOS开发中常用的数学函数
iOS开发中常用的数学函数 /*---- 常用数学公式 ----*/ //指数运算 3^2 3^3 NSLog(,)); //result 9 NSLog(,)); //result 27 //开平方 ...
- 转载 【Linux】Linux中常用操作命令
[Linux]Linux中常用操作命令 https://www.cnblogs.com/laov/p/3541414.html#vim Linux简介及Ubuntu安装 常见指令 系统管理 ...
- Sql 中常用时间处理函数
1.Sql 中常用时间处理函数 GETDATE() 返回当前的日期和时间 DATEPART() 返回日期/时间的单独部分 DATEADD() 返回日期中添加或减去指定的时间间隔 DATEDI ...
- Linux中常用的监控性能的命令(sar、mpstat,vmstat, iostat,)详解
Linux中常用的监控性能的命令有: sar:能查看CPU的平均信息,还能查看指定CPU的信息.与mpstat相比,sar能查看CPU历史信息 mpstat:能查看所有CPU的平均信息,还能查看指定C ...
随机推荐
- jdbc java数据库连接 10)批处理
批处理 很多时候,需要批量执行sql语句! 需求:批量保存信息! 设计: AdminDao Public void save(List<Admin list){ // 目前用这种方式 ...
- 子DIV设置margin-top影响父DIV位置的解决办法
父div如果没有任何东西,子div设置margin-top,父div会下落 <!DOCTYPE html> <html lang="en"> <hea ...
- 台式机装原版Win2008R2
台式机装原版Win2008R2 坑了老半天,总结出几点 1,系统os下载: http://msdn.itellyou.cn/ 注:其他地方下载的,装后发现不是起不来就是驱动装不了. 2,u盘里放个压缩 ...
- [LeetCode] Binary Tree Level Order Traversal 二叉树层序遍历
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...
- mysql-5.7.11-winx64.zip 安装配置
1.下载 http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.11-winx64.zip 2.解压缩zip包: D:\Program Files\m ...
- 【已更新】【原创】Chrome53 最新版惊现无厘头卡死 BUG!
发现问题 今天有客户向我们反馈了一个BUG:一个页面在IE.FireFox.Chrome52中能正常运行,但是在最新版的Chrome53中显示不了??? 习惯性的,我们需要客户提供页面在浏览器中的HT ...
- 使用UITableView展示数据
TableView主要用于展示数据,类似于Android中的ListView. 我们可以通过两个方式使用TableView.第一种是直接使用TableView类.第二种是通过UITableViewCo ...
- mysq大数据分页
mysql limit大数据量分页优化方法 Mysql的优化是非常重要的.其他最常用也最需要优化的就是limit.Mysql的limit给分页带来了极大的方便,但数据量一大的时候,limit的性能就急 ...
- 以 Console 方式运行、调试、编译 .Net 编写的 Windows 服务
经常看到一些人在调试 Windows 服务时,很执著的在附加进程后调试!其实 .Net 编写的 Windows 应用程序,包括 Windows 服务都可以编译成 Console 程序!甚至于 ASP. ...
- C#-WebForm-Session、Cookie-登录验证(未登录跳至登录界面)、隐藏地址栏传值
Post 传值(看不见的传值) Get 传值(看得见的传值) Session - 全局变量组 存放位置:服务端 作用:只要里面有内容,那么这个网站中所有的C#端都能访问到这个变量 -- object类 ...