在接触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)中常用到的函数的更多相关文章

  1. Python常用模块中常用内置函数的具体介绍

    Python作为计算机语言中常用的语言,它具有十分强大的功能,但是你知道Python常用模块I的内置模块中常用内置函数都包括哪些具体的函数吗?以下的文章就是对Python常用模块I的内置模块的常用内置 ...

  2. 转 Linux中常用操作命令

    http://blog.csdn.net/ljianhui/article/details/11100625 初窥Linux 之 我最常用的20条命令 玩过Linux的人都会知道,Linux中的命令的 ...

  3. 【转载】Linux中常用操作命令

    说明:开始学习linux系统,为了方便查看,特转载一篇Linux中常用操作命令,转载地址:http://www.cnblogs.com/laov/p/3541414.html 正文: Linux简介及 ...

  4. php中常用的正则表达式函数

    php中常用的正则表达式函数 * preg_match() * preg_match_all() * preg_replace() * preg_filter() * preg_grep() * pr ...

  5. Linux中常用压缩打包工具

    Linux中常用压缩打包工具 压缩打包是常用的功能,在linux中目前常用的压缩工具有gzip,bzip2以及后起之秀xz.本文将介绍如下的工具常见压缩.解压缩工具以及打包工具tar. gzip2 直 ...

  6. iOS开发中常用的数学函数

    iOS开发中常用的数学函数 /*---- 常用数学公式 ----*/ //指数运算 3^2 3^3 NSLog(,)); //result 9 NSLog(,)); //result 27 //开平方 ...

  7. 转载 【Linux】Linux中常用操作命令

    [Linux]Linux中常用操作命令     https://www.cnblogs.com/laov/p/3541414.html#vim   Linux简介及Ubuntu安装 常见指令 系统管理 ...

  8. Sql 中常用时间处理函数

    1.Sql 中常用时间处理函数  GETDATE()  返回当前的日期和时间 DATEPART()  返回日期/时间的单独部分 DATEADD()   返回日期中添加或减去指定的时间间隔 DATEDI ...

  9. Linux中常用的监控性能的命令(sar、mpstat,vmstat, iostat,)详解

    Linux中常用的监控性能的命令有: sar:能查看CPU的平均信息,还能查看指定CPU的信息.与mpstat相比,sar能查看CPU历史信息 mpstat:能查看所有CPU的平均信息,还能查看指定C ...

随机推荐

  1. AtomicBoolean使用

    使用 AtomicBoolean 高效并发处理 "只初始化一次" 的功能要求: 1 private static AtomicBoolean initialized = new A ...

  2. 连接有密码的mongodb

    mongoose: db.openSet("mongodb://admin:pass@192.168.1.100:27017/mydb");

  3. 使用FastReport打印二维码

    简单介绍一下该功能所在的项目背景:C#语言编写的WPF客户端应用程序,在“结账”模块中,打印出的收款小票上需要显示一个二维码,服务生拿着小票去找顾客,顾客可以选择现金.银行卡等普通支付方式,也可以直接 ...

  4. 基于C/S架构的3D对战网络游戏C++框架 _05搭建系统开发环境与Boost智能指针、内存池初步了解

    本系列博客主要是以对战游戏为背景介绍3D对战网络游戏常用的开发技术以及C++高级编程技巧,有了这些知识,就可以开发出中小型游戏项目或3D工业仿真项目. 笔者将分为以下三个部分向大家介绍(每日更新): ...

  5. swfit-学习笔记(数组的使用)

    Swift数组的使用,参考:<The Swift Programming Language>中文版 // Copyright (c) 2015年 Zsmile. All rights re ...

  6. java学习笔记之IO一()

    1.缓冲输入文件 2.从内存输入 3.格式化的内存输入 4.基本的文本输出 示例: public class BrAndBwOrPwDemo { public static void main(Str ...

  7. 【codeforces 696B】 Puzzles

    http://codeforces.com/problemset/problem/696/B (题目链接) 题意 给出一棵树,随机dfs遍历这棵树,求解每个节点的期望dfs序. Solution 考虑 ...

  8. phpunit 测试框架安装

    PHPUnit是一个轻量级的PHP测试框架.它是在PHP5下面对JUnit3系列版本的完整移植,是xUnit测试框架家族的一员(它们都基于模式先锋Kent Beck的设计).来自百度百科 一.下载wg ...

  9. jQuery中json对象与json字符串互换

    json字符串转json对象:jQuery.parseJSON(jsonStr); json对象转json字符串:JSON.stringify(jsonObj); 根据“|”把字符串变成数组.spli ...

  10. Beta阶段第七次Scrum Meeting

    Beta阶段第七次Scrum Meeting 情况简述 BETA阶段第七次Scrum Meeting 敏捷开发起始时间 2016/12/20 00:00 敏捷开发终止时间 2016/12/21 00: ...