一些 简写代码 的方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
一:“++”,“--”运算放在判断等语句中直接使用会减少代码长度:
例1:
下面的squeeze(s,c)函数,它删除字符串s中出现是所有字符c:
void squeeze(char s[],int c)
{
    int i,j;
    for(i=j=0;s[i] != '\0';i++)
    {
       if(s[i] != c)
       {
          s[j++] = s[i];
       }
    }
    s[j] = '\0';
}
1
2
3
4
5
6
其中的if语句是由下面的if语句简化而来:
if(s[i] != c)
{
   s[j] = s[i];
   j++;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
例2:
strcat(s,t)函数是把字符串t连接到字符串s的尾部:
void strcat(char s[],char t[])
{
   int i = 0, j = 0;
   while(s[i] != '\0')
   {
       i++;
   }
   while((s[i++] = t[j++]) != '\0')
   {
      ;
   }
}
while语句中即进行了自增运算,又进行了赋值运算,还进行了判断运算。
二:语句1?语句2:语句3   的应用:
例如下面的循环语句将打印一个数组的n个元素,每行打印10个元素,每列之间用一个空格隔开,每行用一个换行符结束:
for(i=0;i<n;i++)
{
  printf("%6d%c",a[i],(i%10 == 9 || i == n-1)?'\n':' ');
}
1
2
3
4
5
三:用宏定义#define:
#define MAX(a,b)  ((a)>(b)?(a):(b));
#define MIN(a,b)  ((a)<(b)?(a):(b));
这样就不用用函数去实现MAX,MIN了,减少了调用函数而占用的cpu,从而减少了程序运行的时间。
四:在 return    中进行运算 , 而不在函数主体中额外加代码,使代码看上去更简单!例子就不用了哈。









本文转自 ye小灰灰  51CTO博客,原文链接:http://blog.51cto.com/10704527/1704937,如需转载请自行联系原作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值