用来存放字符的数组称为字符数组,例如:

    1. char a[10];//一维字符数组
    2. char b[5][10];//二维字符数组
    3. char c[20] = {'c', ' ', 'p', 'r', 'o', 'g', 'r', 'a', 'm'}; // 给部分数组元素赋值
    4. char d[] = {'c', ' ', 'p', 'r', 'o', 'g', 'r', 'a', 'm'}; //对全体元素赋值时可以省去长度

    字符数组实际上是一系列字符的集合,也就是字符串(String)。在C语言中,没有专门的字符串变量,没有string类型,通常就用一个字符数组来存放一个字符串。

    不计入长度的结束标记字符,初始化一个字符串的方法如下

    char str[] = {'I','a','m','h','a','p','p','y','\0'};
    

    也可以直接使用字符串常量初始化字符数组

    char str[] = "I am happy";
    

    更简便的还有

    char str[] = {"I am happy"};
    

    注意:
    不能使用下面的赋值方式:

    char str[20];
    str = "I am happy";
    

    但可以用字符指针指向这个字符串:

    char *str;
    str = "I love China";
    
    char *str2 = "hello,xleixz";