**C语言中字符和字符串的使用是一个重点也是一个难点,自己学C也有一段时间了,在这里总结下。自己也复习和巩固下知识点**
1, 概念:
字符是以单引号括起来的单字符,一定要注意单引号和单字符。例如:'a'就是一个合法的单字符,而'ab'的写法就是错误的;单字符用%c进行输出。
字符串:用双引号括起来的多个字符,在C语言中没有字符串变量,可以用字符数组和字符串指针来保存字符串。
#include
int main(int argc, char *argv[])
{
char str[100]="字符数组定义字符串";
char *p="字符串指针定义字符串";
return 0;
}
注意事项:1,使用字符数组来保存的字符串是保存在栈内存里的,栈内存是可读写,所以可直接改变字符数组。
2,使用字符指针保存的字符串是在常量区的,常量区是只读的不能再改变字符串的值,而且保存的是字符常量的地址。
2,常用的字符串操作函数
1>scanf(“%s”,str);可以用来接收字符串,有点是简单方便,缺点是不能接收空格和tab。
2>gets(str); 也可以用来接收字符串,但是Xcode编译器会报警告,原因是如果定义的数组长度是50,如果输入的正好是50个字符,就没有空间存放字符串的结束符\0,还有接收的字符长度超过50时,就会越界暂用其他存储空间&#