字符串与字符数组
前言
字符数组与字符串区别:
1、C语言中没有字符串这种数据类型,可以通过char的数组来替代;
2、字符串一定是一个char的数组,但char的数组未必是字符串;
3、数字0(和字符‘\0’等价)结尾的char数组就是一个字符串,但如果char数组没有以数字0结尾,那么就不是一个字符串,只是普通字符数组,所以字符串是一种特殊的char的数组。
一、字符数组
1、1什么是字符数组?
用来存放字符的数组称为字符数组。
例如:
char a[10]; //一维字符数组
char b[5][10]; //二维字符数组
二、字符串
2.1 什么是字符串
char c[20]={
'c', ' ', 'p', 'r', 'o', 'g', 'r', 'a','m'}; // 给部分数组元素赋值
char d[]={
'c', ' ', 'p', 'r', 'o', 'g', 'r', 'a', 'm' }; //对全体元素赋值时可以省去长度
字符数组实际上是一系列字符的集合,也就是字符串(String)。在C语言中,没有专门的字符串变量,没有string类型,通常就用一个字符数组来存放一个字符串。
char str[30] = {
"c.biancheng.net"};
char str[30] = "c.biancheng.net"; //这种形式更加简洁,实际开发中常用
数组第 0 个元素为’c’,第 1 个元素为’.‘,第 2 个元素为’b’,后面的元素以此类推。
字符数组只有在定义时才能将整个字符串一次性地赋值给它,一旦定义完了,就只能一个字符一个字符地赋值了。