摘要:代码之美,不仅在于为一个给定问题找到解决方案,而且还在代码的简单性、有效性、紧凑性和效率(内存)。代码设计比实际执行更难 。因此,每一个程序员当用C语言编程时,都应该记着这些东西。本文向你介绍规范你的C代码的10种方法。0. 避免不必要的函数调用考虑下面的2个函数: 1 void str_print( char *str ) 2 { 3 int i; 4 for ( i = 0; i < strlen ( str ); i++ ) { 5 printf("%c",str[ i ] ); 6 } 7 } 8 void str_print1 ( ...
阅读全文
摘要:C语言常常让人觉得它所能表达的东西非常有限。它不具有类似第一级函数和模式匹配这样的高级功能。但是C非常简单,并且仍然有一些非常有用的语法技巧和功能,只是没有多少人知道罢了。指定的初始化很多人都知道像这样来静态地初始化数组:int fibs[] = {1, 1, 2, 3, 5};C99标准实际上支持一种更为直观简单的方式来初始化各种不同的集合类数据(如:结构体,联合体和数组)。数组我们可以指定数组的元素来进行初始化。这非常有用,特别是当我们需要根据一组#define来保持某种映射关系的同步更新时。来看看一组错误码的定义,如: 1 /* Entries may not correspond to
阅读全文
摘要:安装步骤:1.编译环境,安装C库、C++库和Boost库装好sudo apt-get install build-essential* 有可能安装build-essential后gdb就已经安装过了sudo apt-get install gdb2. 在 Ubuntu 软件中心 中安装 Code::Blocks IDE3. 安装 Code::Blocks的调试组件 Valgrind(探测内存泄露):sudo apt-get install valgrind4. 安装外围爱好者根据需要自行编译并贡献的软件sudo apt-get installcodeblocks-contrib5. 安装 wx
阅读全文
摘要:C程序: 1 #ifdef HAVE_CONFIG_H 2 #include <config.h> 3 #endif 4 5 #include <stdio.h> 6 #include <stdlib.h> 7 #include <sys/time.h> 8 int main(int argc, char *argv[]) 9 {10 printf("Hello, world!\n");11 struct timeval tvafter,tvpre;12 struct timezone tz;13 int sum = 0; 1
阅读全文