一些 简写代码 的方法

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,如需转载请自行联系原作者
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值