1、 strlen()函数的返回值是什么类型的?
size_t, 和系统有关,或者是unsigned int, 或者是unsigned long.
2、 字符串strlen() 的值,是否和他占据的内存空间相同?
No, 少1
3、 你是否知道strcpy 函数存在的潜在风险?如何避免?
src字符串可能不是以'/0'结尾。strncpy
4、 如果一个字符串没有字符串结束符,而调用str 开头的库函数,会发生什么?
错误的运行结果
5、 Strcpy(),strcat(),strcmp(),strncpy(),strncat(),strncmp()内部到底是如何运行的?这些函数到底对源字符串和目标字符串做了些什么?你是否观察过它们运行时两个字符串内存的变化?
6、 上面这些函数使用时,各有哪些需要注意的地方?
strcmp/strncmp;成功返回0
7、 你会几种字符串查找操作?
char *strchr(const char *s, int c): 定位字符c首次出现在s中的位置
char *strrchr(const char *s, int c): 最后一次
size_t strcspn(const char *s1, const char *s2): 计算并返回s1中不含s2中字符的起始段的长度
size_t strspn(const char *s1, const char *s2): 计算并返回s1中只含s2中字符的起始段的长度
char *strpbrk(const char *s1, const char *s2): 定位字符串s1首次出现s2中字符的位置
char *strstr(const char *s1, const char *s2): 定位s1中首次出现s2的位置
8、 c语言中有字符串这个数据类型吗?
No
9、 对字符串进行操作的时候,是否为字符串结尾符预留存储位置?不然的话容易造成非常访问内存。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/chgaowei/archive/2009/10/28/4737797.aspx