c语言是没有字符串类型的,只有字符型 char
c 语言表示字符串只能用数组或者指针。
例如:
#include <stdio.h>
int main(){
char a[] = {'a','b','c'};
char *b = "123";
for (int i = 0; i < 3; i++) {
printf("%c\n",a[i]);
}
printf("%s\n",b);
return 0 ;
}
打印结果就是
a
b
c
123
注意:这两种方法虽然都表示了字符串,但是内存里是截然不同的存储方式:
- 数组是存在堆中的,可以更改
- 字符串是存在常量区的,不能更改
如果我们强行更改字符串的值就会发生错误
Bus error: 10
系统就报错了