1503|20

2280

帖子

0

资源

五彩晶圆(初级)

keil中C语言的();【】;{}三种括号的使用 [复制链接]

 
keil中C语言的();【】;{}三种括号的使用

/*        名称:K1-K4 控制数码管加减演示
        说明:按下K1后加1计数,按下K2后减1计数,按下K3后清零。
*/
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
//段码
uchar code DSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};
//待显示的3位缓冲
uchar Num_Buffer[]={0,0,0};
//按键代码,按键计数
uchar Key_Code,Key_Counts=0;
//延时
void DelayMS(uint x)
{
        uchar i;
        while(x--) for(i=0;i<120;i++);
}       
//显示函数
void Show_Counts_ON_DSY()
{
        uchar i,j=0x01;
        Num_Buffer[2]=Key_Counts/100;
        Num_Buffer[1]=Key_Counts/10%10;
        Num_Buffer[0]=Key_Counts%10;
        for(i=0;i<3;i++)
        {
                j=_cror_(j,1);
                P0=0xff;
                P0=DSY_CODE[Num_Buffer[i]];
                P2=j;
                DelayMS(1);
        }
}
//主程序
void main()
{
        uchar i;
        P0=0xff;
        P1=0xff;
        P2=0x00;
        Key_Code=0xff;
        while(1)
        {
                Show_Counts_ON_DSY();
                P1=0xff;
                Key_Code=P1;
                //有键按下时,数码管刷新显示30次,该行代码同时起到延时作用
                if(Key_Code!=0xff)
                for(i=0;i<30;i++) Show_Counts_ON_DSY();
                switch(Key_Code)
                {
                        case 0xfe: if(Key_Counts<255) Key_Counts++;
                                                break;
                        case 0xfd: if(Key_Counts>0) Key_Counts--;
                                                break;
                        case 0xfb: Key_Counts=0;
                }
                Key_Code=0xff;
        }
}


1.我想知道什么情况下要用空格、逗号?
2.什么情况下用小括号();中括号【】;还有大括号{}?
此帖出自编程基础论坛

回复

1552

帖子

0

资源

纯净的硅(高级)

这些都是基础,也是语法规定的。但是你要让人穷举所有情况,还是有点困难的。

想要了解这两个问题,看几遍C语言教材也能了解大概,更重要的是实践,形成记忆。

点评

我在看啊哈C语言这本书  只有这样的书才看得懂 才能吸收  很多教材不是不看 而是看了一天只看了一页!不是卡在这个知识点就是卡在另一个知识点!进度异常的慢  详情 回复 发表于 2021-11-11 16:51

回复

61

帖子

2

资源

一粒金砂(中级)

看到这个【】符号,一脸懵,原来是[]这个。


回复

223

帖子

0

资源

版主

你提的都是语法问题。

除了空格,空格一般是为了美化代码用的,如果不理解(),[],{}这三个括号的用法,建议多看书。

点评

你说下撒  详情 回复 发表于 2021-11-11 16:50

回复

2024

帖子

8

资源

五彩晶圆(初级)

语法问题, 自己看书看不会的话, 找个视频教程一点点看, 有一些那种啰嗦版的, 就是说的很细致的, 

个人签名坐而言不如起而行

回复

4719

帖子

1

资源

五彩晶圆(中级)

花一周时间仔细学一下,你就不在迷茫了

点评

搞硬件的  理解下   详情 回复 发表于 2021-11-11 16:49
个人签名

默认摸鱼


回复

2280

帖子

0

资源

五彩晶圆(初级)

freebsder 发表于 2021-11-10 17:25 花一周时间仔细学一下,你就不在迷茫了

搞硬件的  理解下 

点评

我还是搞软件的呢,pads,ad 照样用。  详情 回复 发表于 2021-11-11 17:05

回复

2280

帖子

0

资源

五彩晶圆(初级)

wangerxian 发表于 2021-11-10 11:39 你提的都是语法问题。 除了空格,空格一般是为了美化代码用的,如果不理解(),[],{}这三个括号的用法,建 ...

你说下撒


回复

2280

帖子

0

资源

五彩晶圆(初级)

sint27 发表于 2021-11-10 10:45 这些都是基础,也是语法规定的。但是你要让人穷举所有情况,还是有点困难的。 想要了解这两个问题,看几 ...

我在看啊哈C语言这本书  只有这样的书才看得懂 才能吸收  很多教材不是不看 而是看了一天只看了一页!不是卡在这个知识点就是卡在另一个知识点!进度异常的慢


回复

2280

帖子

0

资源

五彩晶圆(初级)

Num_Buffer[2]=Key_Counts/100;         Num_Buffer[1]=Key_Counts/10%10;         Num_Buffer[0]=Key_Counts%10;  这些啥意思?

点评

Key_Counts的百位存在Num_Buffer数组的第2位,十位存在Num_Buffer的第一位,个位存在Num_Buffer的第0位  详情 回复 发表于 2021-11-11 17:19

回复

4719

帖子

1

资源

五彩晶圆(中级)

QWE4562009 发表于 2021-11-11 16:49 搞硬件的  理解下 

我还是搞软件的呢,pads,ad 照样用。

个人签名

默认摸鱼


回复

223

帖子

0

资源

版主

QWE4562009 发表于 2021-11-11 16:51 Num_Buffer[2]=Key_Counts/100; Num_Buffer[1]=Key_Counts/10%10; Num_Buffer[0]=Key_Coun ...

Key_Counts的百位存在Num_Buffer数组的第2位,十位存在Num_Buffer的第一位,个位存在Num_Buffer的第0位

点评

是说除以100取出整数,除以10取出余数,对10取余数?  详情 回复 发表于 2021-11-11 17:50

回复

2280

帖子

0

资源

五彩晶圆(初级)

嗯  我看看


回复

2280

帖子

0

资源

五彩晶圆(初级)

wangerxian 发表于 2021-11-11 17:19 Key_Counts的百位存在Num_Buffer数组的第2位,十位存在Num_Buffer的第一位,个位存在Num_Buffer的第0位

是说除以100取出整数,除以10取出余数,对10取余数?

点评

假设你有一个数值123,然后123除以10等于12,然后对12求余10,则得到2。  详情 回复 发表于 2021-11-11 18:02

回复

223

帖子

0

资源

版主

QWE4562009 发表于 2021-11-11 17:50 是说除以100取出整数,除以10取出余数,对10取余数?

假设你有一个数值123,然后123除以10等于12,然后对12求余10,则得到2。

点评

如果要取出百位1和个位3呢?有没有啥技巧  详情 回复 发表于 2021-11-12 17:38
这个2就是百味?  详情 回复 发表于 2021-11-12 17:35

回复

2280

帖子

0

资源

五彩晶圆(初级)

本帖最后由 QWE4562009 于 2021-11-12 17:37 编辑
wangerxian 发表于 2021-11-11 18:02 假设你有一个数值123,然后123除以10等于12,然后对12求余10,则得到2。

这个2就是十位?


回复

2280

帖子

0

资源

五彩晶圆(初级)

wangerxian 发表于 2021-11-11 18:02 假设你有一个数值123,然后123除以10等于12,然后对12求余10,则得到2。

如果要取出百位1和个位3呢?有没有啥技巧

点评

要得出百位就除以100再求余10,要得到个位直接求余10  详情 回复 发表于 2021-11-12 23:12

回复

223

帖子

0

资源

版主

QWE4562009 发表于 2021-11-12 17:38 如果要取出百位1和个位3呢?有没有啥技巧

要得出百位就除以100再求余10,要得到个位直接求余10

点评

要得到千位呢?比如1234  得到1  详情 回复 发表于 2021-11-17 11:49

回复

2280

帖子

0

资源

五彩晶圆(初级)

wangerxian 发表于 2021-11-12 23:12 要得出百位就除以100再求余10,要得到个位直接求余10

要得到千位呢?比如1234  得到1

点评

除以1000求余10  详情 回复 发表于 2021-11-17 13:02

回复

223

帖子

0

资源

版主

QWE4562009 发表于 2021-11-17 11:49 要得到千位呢?比如1234  得到1

除以1000求余10

点评

要得到万位  那是不是除以10000求余10  有没有啥规律或者说技巧  详情 回复 发表于 5 天前

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

最新文章 更多>>
    关闭
    站长推荐上一条 1/10 下一条

    About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

    站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

    北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

    电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2021 EEWORLD.com.cn, Inc. All rights reserved
    快速回复 返回顶部 返回列表