C中的字符指针和字符数组的使用

来源:互联网 发布:苹果5s数据用不了 编辑:程序博客网 时间:2024/05/16 05:11

C语言中定义字符数组

 如:定义字符数组char p1[]="abc";

         定义字符指针 char *p2="abc";

        上述两种定义中p1指向的内容是变量,可修改其中的值,而p2指向的内容实际上是常量,不能修改其中的值。

若使用如下定义:

        char p1[]="abc";

        char *p2=p1;

        则此时p2和p1指向的是同一位置,即p2和p1等价。可修改其中的值。

若使用如下定义:

       char str[10];

       scanf("%s",str);//可以输入字符串到变量str中。

       char *a;

       scanf("%s",a);//不提倡这样使用,此时虽然编译时已经给a分配内存单元,但a的值并未指定,即a单元中是一个不可预料的值。有可能此时该位置已存放指令或数据。

 

原创粉丝点击