读取int型数据时就用for(i=0;i<16;i++)这样吗?

[复制链接]
2851|4
 楼主| gaohq 发表于 2009-2-25 08:49 | 显示全部楼层 |阅读模式
我看很多例程上读取8为char型数据时是用for(i=0;i<8;i++)方式,那读取16位的int数据时是不是就for(i=0;i<16;i++)
starm 发表于 2009-2-25 08:52 | 显示全部楼层

for(i=0;i<8;i++)方式

这是读取8次吧, 循环体一共执行了 8 次.

那读取16位的int数据时也可以用 for(i=0;i<8;i++) 
 楼主| gaohq 发表于 2009-2-26 08:44 | 显示全部楼层

谢谢楼上!

用for(i=0;i<8;i++)读两次和用for(i=0;i<16;i++)读一次是不是一样的呢?
我是土匪 发表于 2009-2-26 12:00 | 显示全部楼层

不一定哦

如果你是这样操作:
希望某一操作反复执行16次,那么是等价的,如
char i;
uint16 count = 0;

for(i=0;i<8;i++)
  count++;
for(i=0;i<8;i++)
  count++;

for(i=0;i<16;i++)
  count++;
是等价的。但几乎没有人采用第一种写法来实现。


然而很多操作中i都和具体执行操作有关,如:
char i ;
char count[16];
for(i=0;i<16;i++)
    count = 0;
次数i相当于指针了。再这样:
for(i=0;i<8;i++)
  count = 0;

for(i=0;i<8;i++)
  count = 0;
就玩笑开大了。硬要这样写也很简单,调整指针数值就可以了,当然如果你仅仅为了娱乐休闲一下。

这个是基本的C语法,一般的C语言书籍都会讲解,在循环体那块。
  
lyjian 发表于 2009-2-26 12:50 | 显示全部楼层

看C入门书吧

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

本版积分规则

378

主题

3767

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部