社区
单片机/工控
帖子详情
为什么Keil C中不能for(uchar i=0;i<100;i++){_nop()_;}
dceacho
2009-01-10 06:49:16
RT
为了个循环还得专门弄个变量
...全文
1092
20
打赏
收藏
为什么Keil C中不能for(uchar i=0;i<100;i++){_nop()_;}
RT 为了个循环还得专门弄个变量
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
智能高科
2009-02-04
打赏
举报
回复
c++里可以这样用。
智能高科
2009-02-04
打赏
举报
回复
uchar i;要在语句前定义,keil c和turbo c里都这样的。
sdqd321
2009-01-31
打赏
举报
回复
up
noenoughmemory
2009-01-31
打赏
举报
回复
up
qjy_chess
2009-01-31
打赏
举报
回复
这没什么,不同的编译器总是有一些细微的差别
kk1271
2009-01-28
打赏
举报
回复
不规范的想法!!!无论是c或c++请不要这样写
heyzj
2009-01-27
打赏
举报
回复
delay(uchar i);
这样也不行 , 很奇怪 ,我在视频里看郭天翔写的程序都可以 我自己这么写却说我没声明
98132239
2009-01-22
打赏
举报
回复
一定要这么干也不是不行,可以这样
{
uchar i;
for(i = 0; i < 100; i++){...}
}
这样在出了大括号后i就会失效。不过根据经验,这样做没什么好处,因为这样导致了keil的优化做得不完全。
tjgbl
2009-01-16
打赏
举报
回复
ding
guetcw
2009-01-16
打赏
举报
回复
没好好学C吧,C++才支持在语句里定义变量。
kulg
2009-01-15
打赏
举报
回复
你用的是C++写法。C是不支持的,C要先声明后调用
shuiyan
2009-01-14
打赏
举报
回复
在for里面定义一个新的局部变量,是C++才支持的,C不支持。
KeilC是基于ANSI C(标准C)衍生的,所以不支持。
dceacho
2009-01-14
打赏
举报
回复
[Quote=引用 6 楼 cgj1111111 的回复:]
for(uchar i=0;i <100;i++){_nop()_;}
应该是for(uchar i=0;i <100;i++){_nop_();} 吧
[/Quote]
饿,被你发现了
cgj1111111
2009-01-14
打赏
举报
回复
for(uchar i=0;i<100;i++){_nop()_;}
应该是for(uchar i=0;i<100;i++){_nop_();} 吧
peng5522
2009-01-14
打赏
举报
回复
是这样的 必须在前面 声明 变量
gooogleman
2009-01-11
打赏
举报
回复
[Quote=引用楼主 wangfan027 的帖子:]
RT
为了个循环还得专门弄个变量
为什么Keil C中不能for(uchar i=0;i<100;i++){_nop()_;}
[/Quote]
不能这么写的
为什么Keil C中不能for(uchar i=0;i<100;i++){_nop()_;} ——VC里面就可以这样
爪哇鹅
2009-01-11
打赏
举报
回复
可以这样做
#define uchar unsigned char
uchar i;
void main()
{
for(i=0;i<任意数;i++){}
for(i=0;i<任意;i++){}
for(i=任意数;i>0;i--){}
...
}
也就是说可以重复利用i,不必声明多个变量,程序按照顺序走到下一个循环i自然被赋予新值,当然如果想在某循环之外读取i的值的话就得声明一个新变量来接这个值了
dceacho
2009-01-10
打赏
举报
回复
是说变量的类型,C语言中可以这样写,i只在本次循环中有效,循环完了就没了,KEIL C最短命的变量是局部变量,要是能这样写就好了,能省几个用来循环的变量
zyzhang365
2009-01-10
打赏
举报
回复
楼主讲的是声名变量的位置还是别的什么? 一般嵌入式的编译器要求在函数开头声明变量.
TM1621参考程序
u
char
code Smg[16]={0xeb,0x60,0xc7,0xE5,0x6C,0xAD,0xaf,0xE0,0xef,0xed,0xee,0x2f,0x8b,0x67,0x8f,0x8e}; //0~F字型码 u
char
code Tab0[16]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,...
LCD12864 汉字显示函数STC8A8K单片机
KEIL
工程文件源码.zip
LCD12864 汉字显示函数STC8A8K单片机
KEIL
工程文件源码 /******************************************************************************* * 描述: * * 12864标准字库液晶演示 数据p0,控制p3 * ******************...
关于ds18b20程序
tmp <<= 8; // tmp |= temp[0]; //组成温度的两字节合并 tmpwendu = tmp; *p_wendu = tmpwendu / 16; //------------------------------------- //开始温度转换------------------------- if(Ds18b20_Init()) { ...
void delay(uint t) 在c语言
中
的作用,[voiddelay怎么用]延迟时间怎么计算
j循环可以延时ms个i循环,也就是ms毫秒.for(i=0;i<120,i
++
)do-something;voiddelay怎么用void-delay(uint-t)//参数是无符号整形,时间不可能为负数{register-uint-bt;//定义无符号整形,放在寄存器里,存取速度较...
单片机延时问题20问
简介:延时与
中
断出错,是单片机新手在单片机开发应用过程
中
,经常会遇到的问题,本文汇总整理了包含了MCS-51系列单片机、MSP430单片机、C51单片机、8051F的单片机、avr单片机、STC89C52、PIC单片机…..在内的各种...
单片机/工控
27,373
社区成员
28,771
社区内容
发帖
与我相关
我的任务
单片机/工控
硬件/嵌入开发 单片机/工控
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章