技术开发 频道

成功软件开发者的9种编程习惯

  4. 不乱用if语句

  有些人很喜欢用“if”语句,如下:

  if(a == 0) {   a++;   return(a); }   if(a == 1) {   a += 5;   return(a); }   if(a == 2) {   a += 10;   return(a); }   if(a == 3) {   a += 20;   return(a); }   if(a == 4)   exit(1);

  有没有比这更好的办法呢?else if语句?不是。好的方法是用“switch-case”语句来写简便的程序:

  switch(a) {   case 0: a++;     return(a);     case 1: a += 5;     return(a);     case 2: a += 10;     return(a);     case 3: a += 20;     return(a);     default: exit(1); }

  如果没有与a一致的值,会执行default里定义的作业,上面的例子是要执行结束。

  5. 不乱用程序切断(Block)

  很多人经常乱用程序切断。使用三个以上的切断是比较难以看懂的程序。请看下面例子:

int a = 10; int b = 20; int c = 30; int d = 40;   if(a == 10) {   a = a + d;   if(b == 20)   {     b = b + a;     if(c != b)     {       c = c + 1;       if(d > (a + b))         printf("Made it all the way to the bottom!\n");     }   } }

  这也许是夸张了,但确实有很多人真的这样做。那如何写得更好一点呢?一种方法是用函数来分写:

void next(int a, int b, int c, int d) {   if(c != b)   {     c = c + 1;     if(d > (a + b))       printf("Made it all the way to the bottom!\n");   } }   int main() {   int a = 10;   int b = 20;   int c = 30;   int d = 40;     if(a == 10)   {     a = a + d;     if(b == 20)     {       b = b + a;       next(a, b, c, d);     }   } return(0); }

  要这样写,也许会增加工作量,但程序编得结构化,容易看懂,而且如果函数做得更好,也可以在其他地方再使用。

  6. 写好注释

  要养成写注释的习惯。特别是别人难以理解的程序或变量一定要注释,一个月后,也许你自己也需要看那注释呢。

int x = 100; int y = 1000;   if(x < y)   a = 0; else   a = 1;

  你能知道上面的程序意味着什么?如果不知道变量x,y和a指的是什么,那么很难理解。让我们给它标个注释再看吧:

/* * 检测损益的程序 */ int x = 100; /* x 是卖书的总额*/ int y = 1000 /* y是做书本的费用*/ int a; /* 确认是否有赢利*/ /* 比较x和y: */ if(x < y) /* 1指损失 */   a = 1; else /*0指赢利 */   a = 0;

  这样注释,不懂C语言的人也会看懂各语句意味着什么,各变量指的是什么。写注释是好习惯,但不要什么都注释。注释是为了好理解,不是为了写长编文章。

int profit = 1; /* 赢利等于1 ?? */ int loss = 0; /* 亏损等于 0 ?? */ /* 如果赢利等于1 */ if(profit == 1)   /* 打印出“得赢利啦”??*/   printf("We made a profit!\n"); /* 如果不是 */   else   /*打印出“我们亏损啦”*/   printf("We made a loss!\n");

  这样注释是浪费时间。一般是定变量或变量值的时候需要注释,还有说明程序的目的,使用某个函数,procedule等的时候也需要。

0
相关文章