winston 发表于 2012-1-17 10:16:59

《C专家编程》笔记4

第四章 令人震惊的事实:数组和指针并不相同许多C语言书籍对数组与指针何时相同、何时不同含糊其辞,对于这个应该重点阐述的话题只是一带而过;
声明相当于普通声明:它所说明的并非自身,而是描述其他地方的创建的对象;
定义相当于特殊的声明:它为对象分配内存;
x = y;
在这个上下文环境里,符号x的含义是x所代表的地址,符号y的含义是y所代表的地址的内容;
数组名时隔左值但不是可走该的左值;

view plaincopyprint?


#include<stdio.h>

int main()
{
    char * p = "012345";
    char a = "01234";
    //float * pi = 3.14;

    printf("%c", p);
    //p = ch;

    printf("%c", a);
    a = 'a';
    printf("%c", a);
      
    return 0;
};#include<stdio.h>
int main()
{
        char * p = "012345";
        char a = "01234";
        //float * pi = 3.14;
        printf("%c", p);
        //p = ch;
        printf("%c", a);
        a = 'a';
        printf("%c", a);
       
        return 0;
};



以上代码验证:1 只有字符串常量可以在定义事初始化;2 用char *的字符串常量被定义为只读;3 用char a[] 定义的字符串常量可以修改;

来自:http://blog.csdn.net/mingchaoyan/article/details/7206086
页: [1]
查看完整版本: 《C专家编程》笔记4