最早就准备写字符串面试题,因为字符串问题可以说是每场面试必会遇到的题目,今天我们就开始这个系列。题目多来源于我多年的面试经验,也有些来源于网络。所有算法及代码实现均最大限度保证完整性及正确性,希望对大家有所帮助。如有错误及更好的方案请留言告知,不胜感激。
今天我们主要介绍一下字符串的基本知识。
字符串定义
字符串或串(String)是由数字、字母、下划线组成的一串字符。在 C 语言中,字符串实际上是使用 null 字符 '\0' 终止的一维字符数组。
常见库函数及实现:
strcpy(s1, s2);
复制字符串 s2 到字符串 s1。
memset(s1,s2,n)
初始化函数。将某一块内存中s1的内容全部设置为指定的s2, 申请的内存做初始化工作。
strcat(s1, s2);
连接字符串 s2 到字符串 s1 的末尾。
strlen(s1);
返回字符串 s1 的长度。
strcmp(s1, s2);
如果 s1 和 s2 是相同的,则返回 0;如果 s1<s2 则返回小于 0;如果 s1>s2 则返回大于 0。
memmove(s1,s2,n);
由s2所指内存区域复制n个字节到s1所指内存区域。
memcmp(s1,s2,n);
是比较内存区域s1和s2的前n个字节。该函数是按字节比较的。
更多知识请关注IT编程之路!