鱼C论坛

 找回密码
 立即注册
查看: 6419|回复: 22

[技术交流] 【悬赏促学习】C语言头脑风暴

[复制链接]
发表于 2011-11-25 03:19:03 | 显示全部楼层 |阅读模式
50鱼币
回答代码请务必规范:

Q1. 用#define 标准定义一年的秒数(按365天计算)

Q2. 求注释
int a;         //例:定义一个整型变量a
int *a;                
int **a;
int a[10];
int *a[10];
int (*a)[10];
int (*a)(int);
int (*a[10])(int);

Q3. 下边两段代码用来干嘛?
while( i )
    ;

for( ; ; )
    ;




                               
登录/注册后可看大图
该贴已经同步到 小甲鱼的微博

最佳答案

查看完整内容

Q1: #define SECOND_OF_YEAR (60UL*60*24*365) 和风扫地一样都加了括号,比风扫地好在指明了该值的类型是UL,至少指明是unsigned类型是很重要的 Q2: int a; //例:定义一个整型变量a int *a; //一个指针,该指针指向int类型 int **a; //一个指针,该指针指向指针类型,该指针类型指向int类型 int a[10]; //一个数组,该数组有10个元素,每个元素都是iint类型 int *a[10];//一个数 ...
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-11-25 03:19:04 | 显示全部楼层
Q1:
#define SECOND_OF_YEAR (60UL*60*24*365)
和风扫地一样都加了括号,比风扫地好在指明了该值的类型是UL,至少指明是unsigned类型是很重要的

Q2:
int a;         //例:定义一个整型变量a

int *a;       //一个指针,该指针指向int类型         

int **a;     //一个指针,该指针指向指针类型,该指针类型指向int类型

int a[10];  //一个数组,该数组有10个元素,每个元素都是iint类型

int *a[10];//一个数组,该数组有10个元素,每个元素都是指针类型,该指针类型指向int类型

int (*a)[10];//一个指针,该指针指向一个数组类型,该数组类型有10个元素,每个元素都是int类型

int (*a)(int);//一个指针,该指针指向函数,该函数只有一个输入参数,且为int类型,该函数的返回值类型  
                 //为int

int (*a[10])(int);//一个数组,该数组有10个元素,每个元素都是个指针类型,该指针类型指向函数,该函
                       //数只有一个输入参数,且为int类型,该函数的返回值类型为int

Q3:
while( i );
不断查询变量i的值是否为0,为0结束循环。这个一般用于嵌入式代码或者多线程编程(我只在这两个地方用过),变量i表示外部某个硬件的状态或者用于同步不同线程的变量。此i的定义必须指明是volatile的,否则编译优化后这个循环要么不执行要么死循环。

for( ; ; );
死循环,在嵌入式系统(让系统不断执行同一段动作,当然要加上循环体)和多线程编程(阻止一个线程退出)里常用。





评分

参与人数 1荣誉 +10 鱼币 +10 收起 理由
小甲鱼 + 10 + 10 1.注意到了细节,代码规范 2.值得大家学习

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

头像被屏蔽
发表于 2011-11-25 05:48:05 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-25 08:34:17 | 显示全部楼层
本帖最后由 cqy55555 于 2011-11-25 08:43 编辑

这么晚还不睡。。。 )W_[PKS_35XA~%$SQ0_SRK9.gif   
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-25 09:07:05 | 显示全部楼层
本帖最后由 风扫地 于 2011-11-25 09:40 编辑

额,有一些基础也忘了,看来学习不能间断啊。
只是抛砖,期望引出大家的玉、
(1):#define SECONDS_A_YEAR  (365*24*60*60)

(2):
游客,如果您要查看本帖隐藏内容请回复





(3):
游客,如果您要查看本帖隐藏内容请回复

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-25 09:36:43 | 显示全部楼层
看看风扫地的砖
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-25 09:41:12 | 显示全部楼层
风扫地 发表于 2011-11-25 09:07
额,有一些基础也忘了,看来学习不能间断啊。
只是抛砖,期望引出大家的玉、
(1):#define SECONDS_A_YEAR ...

while( i )
      ;
我觉得这里应该也属于中断吧,如果i==0的话就往下走,如果i!=0的话,就是停了,也走不出来。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-25 09:44:21 | 显示全部楼层
sinner 发表于 2011-11-25 09:41
while( i )
      ;
我觉得这里应该也属于中断吧,如果i==0的话就往下走,如果i!=0的话,就是停了,也走 ...

嗯。也对。。
while执行体没有语句。如果不改变 i 的值。程序流程也只能停在这里了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-25 09:44:49 | 显示全部楼层
学习看看:lol
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

头像被屏蔽
发表于 2011-11-25 10:53:06 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-25 10:54:10 | 显示全部楼层
:L看看 我还没看完C呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

头像被屏蔽
发表于 2011-11-25 11:07:25 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-25 11:25:43 | 显示全部楼层
仰望天上的光 发表于 2011-11-25 11:01
Q1:
#define SECOND_OF_YEAR (60UL*60*24*365)
和风扫地一样都加了括号,比风扫地好在指明了该值的类型是 ...

up`up`.学习下版主和各位大虾们的代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-25 13:42:27 | 显示全部楼层
Q1: #define SECOND_PER_YEAR (60*60*24*365) UL

Q2: int a;           //例:定义一个整型变量a
      int *a;         //定义一个指向整型变量的指针a      
      int **a;       //定义一个指向整型变量的二级指针a
      int a[10];     //定义一个含有10个整型元素的数组a
      int *a[10];   //定义一个含有10个指向整型变量的指针元素的指针数组a
      int (*a)[10]; //定义一个指向含有10个整型元素数组的指针a
      int (*a)(int); //定义一个指向含有一个整型参数且返回整型值的函数的指针a
int (*a[10])(int);//定义一个指向含有一个整型参数且返回整型值的函数的含有10个指针元素的指针数组a

Q3: while(i)
         ;
      i 为0,循环结束;i 为非0,继续执行循环体。
      for( ; ; )
         ;
      一个死循环,直到资源耗尽才会结束。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-25 17:03:38 | 显示全部楼层
真是可惜呀
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

头像被屏蔽
发表于 2011-11-25 21:54:05 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-25 23:42:14 | 显示全部楼层
郁闷啊
我得加油啊
现在还在语句中徘徊了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-26 00:04:49 | 显示全部楼层
本帖最后由 yulin3192 于 2011-11-26 00:05 编辑

while( i )  //循环语句,i为真值是执行循环体,为假跳出循环体
    ;

for( ; ; ) // 循环语句,括号内的第一个分号前变量赋值 如:a = 2; 第二个分号前些表达式 如:a <=100 ;第二个分号后面也是表达式 如:a++.
    ; //循环体
例:
# include <stdio.h>
int main (void)
{
         int a ;
         for (a = 0; a <= 3; a++)
               printf ("我是神哈哈!!!!\n");

         return 0;
}
/*
执行步骤:先执行a = 0;然后执行表达式 a <= 3 为真时执行printf ;printf 执行完后执行 a++;然后再执行a <=3;一次循环执行直到表达式a <= 3不成立跳出循环

结果是:我是神哈哈!!!!
            我是神哈哈!!!!
            我是神哈哈!!!!
            我是神哈哈!!!!
*/
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-12-2 17:34:10 | 显示全部楼层
基础不可少啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-12-9 22:05:49 | 显示全部楼层
学习看看:D
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-21 11:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表