发布时间:2013-01-02 15:02:47
老生常谈,字符串,字符数组,字符串指针,字符数组指针。先罗索几句常识,直接写的字符串(要加双引号)是常量,在常量区,字符数组是变量,是在堆里还是栈里由程序员决定,无论是字符数组还是其他形式的字符串都要加\n表示结束。常量字符串加个\n表示结束非常好理解,不以这种结构来存储字符串会使得程序不知道字符串何时结束,但字符数组也要加个\n表示结束第一时间确实令人难心理解。不得不再次回到编译器的角度来看数组,数组名可以看作编译过程中的地址,C编译器在编译的过程中并不作过多的检查,他只作数组首地址处理和首地址加下标数得到的地址处理,所以检测数组是否越界是程序员的责任,甚至有程序员故意写下数组越界的代码。至......【阅读全文】
发布时间:2012-12-31 19:58:56
回想几个月前刚开始学C语言,听人说C语言有多难多难被吓得一愣一愣的,后来刚学会时感觉C语言易学难精,想能用只不过几天的事情,只有三十二个关键字而已。最近回头看了一下三十二个关键字,别有一翻滋味,其实我自己也没真正看懂三十二个关键字是怎么用的。 今天就挑几个关键字,及宏的用法,还有指针和数组名这个常见的新手绕口令来讲一讲C的基础之基础的细节。 先讲static,const,volatile,extern,这四个关键字。面向过程和面......【阅读全文】