1、基本概念
字符串和字符数组很相似,但是有本质上的区别。
(1) C语言中,字符串是双引号括起来的单个或多个字符的集合,编译器自动在结尾加上’\0’字符。字符串常量存储在只读数据段,无法通过指针进行修改字符串中的某个字符。
(2)C语言中,不能定义字符串(没有string关键字,只要C++才有),但是在C语言中使用字符串,通常会用字符数组来模拟字符串,必须是’\0’结尾的字符数组,这个字符数组存储通常会分配在栈区,也可以被称为字符串,且该字符串中的字符是可以修改的。如果字符数组中没有’\0’结尾,那该字符数组就是普通的字符数组,不是字符串。
2、代码分析
#include <stdio.h>
int main()
{
//字符数组s和s0
char s[] = "Hello World!";//可以成为字符串
char s0[] =