在没有IDE的时候,记住一些常用的库函数的函数名、参数、基本用法及注意事项是很有必要的。

参照Linux_C_HS.chm的目录,我大致将常用的函数分为一下几类:

  • 1. 内存及字符串控制及操作
  • 2. 字符串转换
  • 3. 字符测试
  • 4. 文件操作
  • 5. 时间日期
  • 6. 常用数学函数
  • 7. 文件内容操作
  • 8. 文件权限控制
  • 9. 进程操作
  • 10. 线程操作
  • 11. Socket操作
  • 12. 信号处理
  • 13. 数据结构及算法

以下是对第一项 内存及字符串控制及操作 的归纳整理。

  • 已经不赞成使用的函数归类
*
* 函数名 用途 替换方案
*. int bcmp(const void *s1, const void *s2, size_t n); compare byte sequences memcmp
*
*. void bcopy(const void *src, void *dest, size_t n); copy byte sequence memcpy Or memmove
*
*. void bzero(void *s, size_t n); write zero-valued bytes memset
*
*. char *index(const char *s, int c); locate character in string strchr
*
*. char *rindex(const char *s, int c); locate character in string strrchr
*
  • 内存或字符串查找函数归类
*           函数名                                                   用途                                       备注
*. void *memchr(const void *s, int c, size_t n); scan memory for a character (Forward) return a pointer to the matching byte or NULL if the
character does not occur in the given memory area.
*
*. void *memrchr(const void *s, int c, size_t n); scan memory for a character (Backward) return a pointer to the matching byte or NULL if the
character does not occur in the given memory area.
*
*. char *strchr(const char *s, int c); locate character in string (Forward) return a pointer to the matched character or NULL if
the character is not found.
*
*. char *strrchr(const char *s, int c); locate character in string (Backward) return a pointer to the matched character or NULL if
the character is not found.
*
*. char *strstr(const char *haystack, const char *needle); locate a substring return a pointer to the beginning of the substring,
or NULL if the substring is not found.
*
*. char *strcasestr(const char *haystack, const char *needle); locate a substring,ignores the return a pointer to the beginning of the substring,
case of both arguments. or NULL if the substring is not found.
*
  • 内存及字符串拷贝、比较函数归类
*           函数名                                                  用途                                        备注
*
*. void *memcpy(void *dest, const void *src, size_t n); copy memory area The memcpy() function returns a pointer to dest.
*
*. char *strcpy(char *dest, const char *src); copy a string return a pointer to the destination string dest.
*
*. char *strncpy(char *dest, const char *src, size_t n); copy a string return a pointer to the destination string dest.
*
*. void *memmove(void *dest, const void *src, size_t n); copy memory area , may overlap returns a pointer to dest.
*
*. int memcmp(const void *s1, const void *s2, size_t n); compare memory areas returns an integer less than, equal to, or greater than zero if the first n bytes of s1 is found
*
*. int strcmp(const char *s1, const char *s2); compare two strings return an integer less than, equal to, or greater than zero if s1 is foundfound
*
*. int strncmp(const char *s1, const char *s2, size_t n); compare two strings UP
*
*. int strcasecmp(const char *s1, const char *s2); compare two strings ignoring case UP
*
*. int strncasecmp(const char *s1, const char *s2, size_t n); compare two strings ignoring case UP
*
* . char *strdup(const char *s); duplicate a string returns a pointer to a new string which is a duplicate of the string s. Memory for the new string is obtained with
*
  • 内存或字符串连接、分割、求长等函数归类
*           函数名                                                  用途                                            备注
*. char *strcat(char *dest, const char *src); concatenate two strings return a pointer to the resulting string dest
*
*. char *strncat(char *dest, const char *src, size_t n); UP UP
*
*. char *strtok(char *str, const char *delim); extract tokens from strings 第一次调用时,str必须不为空,第二次调用str必须为空
*
*. char *strtok_r(char *str, const char *delim, char **saveptr); 可重入函数,线程安全 推荐使用这个分割函数,具体讨论见http://blog.csdn.net/liuintermilan/article/details/6283705
*

以上,就是对第一项的整理归纳。接下来,会对第二项 字符串转换  进行归纳。

归纳整理Linux下C语言常用的库函数----内存及字符串控制及操作的更多相关文章

  1. 归纳整理Linux下C语言常用的库函数----文件操作

    在没有IDE的时候,记住一些常用的库函数的函数名.参数.基本用法及注意事项是很有必要的. 参照Linux_C_HS.chm的目录,我大致将常用的函数分为一下几类: 1. 内存及字符串控制及操作 2. ...

  2. 归纳整理Linux下C语言常用的库函数----时间日期数学及算法

    在没有IDE的时候,记住一些常用的库函数的函数名.参数.基本用法及注意事项是很有必要的. 参照Linux_C_HS.chm的目录,我大致将常用的函数分为一下几类: 1. 内存及字符串控制及操作 2. ...

  3. 归纳整理Linux下C语言常用的库函数----字符串转换、字符测试、及内存控制

    在没有IDE的时候,记住一些常用的库函数的函数名.参数.基本用法及注意事项是很有必要的. 参照Linux_C_HS.chm的目录,我大致将常用的函数分为一下几类: 1. 内存及字符串控制及操作 2. ...

  4. 笔记整理——Linux下C语言正则表达式

    Linux下C语言正则表达式使用详解 - Google Chrome (2013/5/2 16:40:37) Linux下C语言正则表达式使用详解 2012年6月6日Neal627 views发表评论 ...

  5. LINUX下C语言编程基础

    实验二 Linux下C语言编程基础 一.实验目的 1. 熟悉Linux系统下的开发环境 2. 熟悉vi的基本操作 3. 熟悉gcc编译器的基本原理 4. 熟练使用gcc编译器的常用选项 5 .熟练使用 ...

  6. Unix和Linux下C语言学习指南

    转自:http://www.linuxdiyf.com/viewarticle.php?id=174074 Unix和Linux下C语言学习指南 引言 尽管 C 语言问世已近 30 年,但它的魅力仍未 ...

  7. LINUX下C语言编程调用函数、链接头文件以及库文件

    LINUX下C语言编程经常需要链接其他函数,而其他函数一般都放在另外.c文件中,或者打包放在一个库文件里面,我需要在main函数中调用这些函数,主要有如下几种方法: 1.当需要调用函数的个数比较少时, ...

  8. Linux下提权常用小命令

    有些新手朋友在拿到一个webshell后如果看到服务器是Linux或Unix操作系统的就直接放弃提权,认为Linux或Unix下的提权很难,不是大家能做的,其实Linux下的提权并没有很多人想象的那么 ...

  9. linux下C语言多线程编程实例

    用一个实例.来学习linux下C语言多线程编程实例. 代码目的:通过创建两个线程来实现对一个数的递加.代码: //包含的头文件 #include <pthread.h> #include ...

随机推荐

  1. javascript中new Date()会存在偏差一小时的bug

    事件回顾: 因为我们的产品会有与时间转换这部分,并且流量主要集中在小程序. emmm~  获取用户出生的年/月/日/时  我们和后台协商的是换算用户选择后的时间为  年/月/日/时/分/秒  所以我们 ...

  2. Loops with PL/SQL

    1. Basic loop loop /* statements */ end loop; 2. While loop while a > b loop /* statements */ end ...

  3. hdu2883

    题解: 网络流 用一个离散化 代码: #include<cstdio> #include<cstring> #include<algorithm> using na ...

  4. halcon之扫描文档祛底色

                                             halcon之扫描文档祛底色增   很多扫描APP都有祛底色的功能:用于改善成像质量,通常扫描后的图像可能会用于存档或 ...

  5. SQLServer查看用户连接数

    SELECT login_name, ) user_count FROM Sys.dm_exec_requests dr WITH(nolock) RIGHT OUTER JOIN Sys.dm_ex ...

  6. Nvidia Driver

    https://www.if-not-true-then-false.com/2015/fedora-nvidia-guide/ https://javacodes.cn/322.html https ...

  7. SharePoint 2013的100个新功能之网站管理(三)

    一:跨网站发布 跨网站发布是SharePoint 2013的一个新功能,可以使用户跨网站集.Web应用程序甚至是场重用内容.该功能叫做跨网站发布功能.用户可以使用该功能在SharePoint 2013 ...

  8. LNMP架构下的nginx、mysql、php的源码安装

    一.LNMP的介绍 LNMP就是Linux+Nginx+Mysql+Php这种网站服务架构.Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统,常见版本有:centos.ubun ...

  9. 自动化测试--响应请求测试(.net)

    Web运行原理简单地说是“浏览器发送一个HTTP Request到Web服务器上,Web服务器处理完后将结果(HTTP Response)返回给浏览器”. 通常测试一个web api是否正确,可以通过 ...

  10. tensorflow命令行参数:tf.app.flags.DEFINE_string、tf.app.flags.DEFINE_integer、tf.app.flags.DEFINE_boolean

    tf 中定义了 tf.app.flags.FLAGS ,用于接受从终端传入的命令行参数,相当于对Python中的命令行参数模块optpars(参考:python中处理命令行参数的模块optpars)做 ...