C字符串处理函数
来源:互联网 发布:如何开通淘宝贷款 编辑:程序博客网 时间:2024/04/25 17:41
1、字符串长度strlen()
原型为:
size_tstrlen(
const char *str
);//size_t是_int64或者unsignedint,取决于平台环境
注意:strlen得到的是除字符串结束标记(string terminator / nullcharacter)外的所有字符的个数.
2、字符串大小写转换strupr、strlwr
原型为:
char *strupr(
char *str
);
char *strlwr(
char * str
);
返回值和函数的参数一样.
3、字符串复制函数strcpy、strncpy、strcpy_s
原型为
char *strcpy(char*strDestination,constchar*strSource);
char *strncpy(char*strDest,constchar*strSource,size_tcount);
errno_t strcpy_s(
char *strDestination,
size_t numberOfElements,
const char *strSource
);
前两个函数分别返回strDestination和strDest.最后一个返回错误信息.
strncpy函数可以控制需要复制的字符个数,程序员可以通过这个参数提高程序的安全性,不过在VC2005及以上版本中仍然会有一个警告,因为如果程序员自身在设置这个参数时出错的话(比如设置的字符个数超出缓冲区可以容纳的字符个数),这个函数还是会像strcpy一样执行。
strcpy_s函数需要缓冲区可以容纳的字符个数作为其参数之一,这样可以帮助程序员检查复制时的安全性,如果缓冲区容量不足,程序在运行时将抛出异常。这样的做法在字符串复制时安全性是最高的(不过也需要程序员准确表示出缓冲区的大小)。同样我们也可以通过assert的方法来提高使用strcpy和strncpy时的安全性。strcpy_s函数是VC++中推荐的安全函数.
4、字符串比较函数strcmp、_stricmp
int strcmp(constchar*string1,constchar*string2);
函数返回string1和string2在词典中(如果将两个字符串按词典索引顺序放入词典中的话)的顺序关系.如下
Value
Relationship of string1 to string2
< 0
string1 less thanstring2
0
string1 identical tostring2
> 0
string1 greater thanstring2
_stricmp对字符串中字母的大小写不敏感(insensitive).
5、字符串连接函数strcat、strncat
char *strcat(
char *strDestination,
const char *strSource
);
char *strncat(
char *strDest,
const char *strSource,
size_t count
);
strncat中的count参数指明要附加的字符个数,如果count >strlen(strSource) + 1,count会被strlen(strSource)+ 1取代。
6、其他不常用函数,包括将字符串转换成数字的函数、字符检测函数、字符大小写转换函数等。
- c++(字符串处理函数)
- C字符串处理函数
- C字符串处理函数
- c++(字符串处理函数)
- C字符串处理函数
- C字符串处理函数
- C字符串处理函数
- C- 字符串处理函数
- c 字符串处理函数
- C字符串处理函数
- C字符串处理函数
- C字符串处理函数
- c字符串处理函数
- C字符串处理函数
- C字符串处理函数
- C字符串处理函数
- C字符串处理函数
- C字符串处理函数
- KMP
- KMP
- ADB
- HTML5 新特性(2)--Canvas
- jquery插件实现手风琴效果
- C字符串处理函数
- 关于 contentObserver()中的onChang()执行两次的问题
- jquery-accordion
- 使用正则表达式匹配ip地址是否合法
- 如何在VirtualBox里为已有的硬盘修改大小?
- jquery-tbs
- RED启动ARED算法
- 如何解决:Android中 Error generating final archive: Debug Certificate expired on XXX 的错误
- jquery-dialog