字符串中没有显式给出有效字符的个数,只规定在字符串结束符‘\0’之前的字符都是字符串的有效字符,一般用结束符'\0'来控制循环。循环条件:s[i]!='\0'。
字符串的输入和输出
(1)用%s整体输入/输出
char name[100];
scanf("%s",name);
printf("%s",name);
用scanf()函数以%s格式读入的数据不能含有空白符。
(2)用gets()和puts()函数:
gets()函数的一般格式
gets(字符数组名);
puts()函数的一般格式
puts(字符数组名);
输入字符串较安全的方式一般采用函数fgets(),使用fgets()函数允许输入空格。
fgets(字符数组,字符个数,文件指针);
常用字符串函数
1.求字符串长度函数strlen()
调用格式:strlen(str)
功能:测试字符串长度。函数返回值就是str中字符的个数。
2.字符串复制函数strcpy()和strncpy()
调用格式:strcpy(字符数组1,字符串2)
功能:复制第二个参数内容到第一个参数中。第一个参数必须有足够的内存来接受第二个参数,第二个参数可以是含有结束符‘\0’的字符串
调用格式:strncpy(字符数组1,字符串2,n)
功能:复制第二个参数中最多n个字符到第一个参数中最多n个字符到第一个参数中。
3.字符串比较函数strcmp()和strncmp()
调用格式:strcmp(字符串1,字符串2)
功能:比较字符串1和字符串2的大小,若前者大则返回一个正整数,若后者大则返回一个负整数,若两者相等,则返回0。
调用格式:strncmp(字符串1,字符串2,n)
功能:将字符串1中最多n个字符与字符串2进行比较。
4.字符串连接函数strcat()和strncat()
调用格式:strcat(字符数组1,字符串2)
功能:把字符串2中最多n个字符添加到字符数组1的有效字符后面。