学习
hanjk
这个作者很懒,什么都没留下…
展开
-
开始读《C专家编程》
前两天在网上看到《C专家编程》这本书的评价还不错,就去书店买了一本回来捧读,每天晚上看一些。探讨的问题确实比较深,都在讨论C语言本身的问题了。提到了C语言中的一些不足。本来认为C语言是无懈可击的,可从作者的角度看来,确实有些不妥的地方,想想也是,哪有完美无缺东西呢。其实作者也并非在贬低C,只是向读者揭示一些平日难以觉察的地方,以在编程过程中加以防范。比如库函数gets,只有一个指针参数,因原创 2009-11-21 19:22:00 · 374 阅读 · 0 评论 -
About const
摘抄几段Dan Saks对const的讲解: typedef void * VP;Type specifiers contribute to the type of the declarator-id; other specifiers provide nontype information that applies directly to the declarator-id原创 2009-11-24 18:22:00 · 348 阅读 · 0 评论 -
[转]关于volatile
由于访问寄存器的速度要快过RAM,所以编译器一般都会作减少存取外部RAM的优化。比如: static int i=0; int main(void) { ... while (1) { if (i) dosomething(); } } /* Interrupt service routine. */ void ISR_2(v转载 2009-11-24 18:42:00 · 477 阅读 · 0 评论 -
指针与数组
指针与数组有着本质的区别,分别举例来说明他们的工作过程。 char szC[5] = "abcd";char c = szC[3];上面这条语句的工作过程如下:1.编译器符号表中有个szC,对应地址1234;2.将地址1234加上偏移3,得1237;3.取地址1237的内容。 char * p = "abcd";char c = p[3];上面这条语句的原创 2009-12-15 22:23:00 · 569 阅读 · 0 评论 -
MSG_NOSIGNAL
linux下当连接断开,还发数据的时候,不仅send()的返回值会有反映,而且还会像系统发送一个异常消息,如果不作处理,系统会出BrokePipe,程序会退出。为此,send()函数的最后一个参数可以设MSG_NOSIGNAL,禁止send()函数向系统发送异常消息。转载 2009-12-16 22:23:00 · 8262 阅读 · 0 评论