一、什么是字符串数组
二、字符串与普通字符数组的区别指针
三、字符串的定义方式内存
四、字符串的使用字符串
五、什么是字符串数组string
六、字符串数组的赋值it
七、字符串数组的遍历io
一、什么是字符串class
• 用双引号引发来的多个字符,以‘\0’结尾变量
–"I am a string.\n”
–"a string""other string" ==> "a string other string";遍历–"a string \
string" ==> "a string string"
二、字符串与普通字符数组的区别
• 字符数组
–是字符类型的数组
–每一个数组元素保存一个字符
• 字符串
–是字符指针变量
–指向字符串中第一个字符的地址
三、字符串的定义方式
• 字面值 "Hello”
printf("Hello");
• 使用字符数组来定义数组
char str[10]={'H','e','l','l','o','\0'};
• 使用字符指针
char* str2 = str;
四、字符串的使用
• 声明的变量,放在内存中的栈区。
• 字面值方式建立的字符串,放在内存中的代码区,若是建立的是字符串,而且值是相同的,只会建立一个内 存区域,其值是只读的,值不能够改变。
• 使用数组方式建立的字符串,放在内存中的栈区,能够 建立多个相同的字符串,其值能够改变。
• 字符指针,只是指向了内存的一个区域。
五、什么是字符串数组
• 指针数组(字符串数组)
• 数组中的元素是指针->指针又是字符串->字符串数组
• 保存多个字符串地址
六、字符串数组的赋值
int main() {
//字符串数组
char* strs[5] = {"aaa", "bbb", "ccc", "ddd", "eee"};printf("sizeof(strs[0]=%ld\n",sizeof(strs[0]));
strs[0] = "AAA";
return 0;
}
七、字符串数组的遍历
int main() {
//字符串数组
char* strs[5] = {"aaa", "bbb", "ccc", "ddd", "eee"};for (int i=0; i<5; i++) {
printf("%s ", strs[i]);
}return 0;
}