您的位置:首页 > 编程语言 > C语言/C++

C\C++ 一些函数

2012-12-17 17:34 162 查看
1、c_str()
用法:#include <string>
将string 转换为char *。
备忘之用,不断更新。
2、strcmp
原型:extern int strcmp(const char *s1,const char * s2);
用法:#include <string.h>
功能:比较字符串s1和s2。
一般形式:strcmp(字符串1,字符串2)
说明:
当s1<s2时,返回值<0
当s1==s2时,返回值=0
当s1>s2时,返回值>0
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。如:
"A"<"B" "a">"A" "computer">"compare"
特别注意:strcmp(const char *s1,const char * s2)这里面只能比较字符串,不能比较数字等其他形式的参数。

3、sscanf
函数原型:
int sscanf( const char *, const char *, ...);
int sscanf(const char *buffer,const char *format,[argument ]...);
buffer 存储的数据
format 格式控制字符串
argument 选择性设定字符串
sscanf会从buffer里读进数据,依照argument的设定将数据写回。
用法:#include<stdio.h>
功能:sscanf() - 从一个字符串中读进与指定格式相符的数据.
举例:sscanf(b, "Cached: %d", &cache); 将char* b中的字符串按照格式读进cache中,cache是int 型数据。

4、snprintf
函数原型:int snprintf(char *str, size_t size, const char *format, ...);
功能:
将可变个参数(...)按照format格式化成字符串,然后将其复制到str中
(1) 如果格式化后的字符串长度 < size,则将此字符串全部复制到str中,并给其后添加一个字符串结束符('\0');
(2) 如果格式化后的字符串长度 >= size,则只将其中的(size-1)个字符复制到str中,并返回一个负值,并给其后添加一个字符串结束符('\0')
所需头文件:#include <stdio.h>

备注:
strcpy() sprintf() strcat() 存在安全隐患, 其对应的安全版为:
strncpy() snprintf() strncat()

本文出自 “说话的白菜” 博客,谢绝转载!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: