打印
[技术讨论]

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

[复制链接]
3787|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
QWE4562009|  楼主 | 2021-11-10 10:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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.什么情况下用小括号();中括号【】;还有大括号{}?

使用特权

评论回复

相关帖子

沙发
HWM| | 2021-11-10 10:42 | 只看该作者
大括号{}通常用于程序块,中括号[]则通常用于数组下标。小括号的使用范围通常类似表达式中的括号,包括函数参数。

使用特权

评论回复
板凳
tyw| | 2021-11-10 11:07 | 只看该作者
地板
6552918| | 2021-11-10 11:57 | 只看该作者
这是C语言基础,找本书看看吧

使用特权

评论回复
5
海洋无限| | 2021-11-10 12:37 | 只看该作者
这是C语言基本语法哦

使用特权

评论回复
6
hxfxt| | 2021-11-10 15:33 | 只看该作者
找一本C语言的书仔细看一下

使用特权

评论回复
7
linxi6414| | 2021-11-10 20:00 | 只看该作者
不至于吧,10年的老会员了,连这些都不了解?

使用特权

评论回复
8
Gavin3389| | 2021-11-11 09:09 | 只看该作者
这个~~~随便一本c语言都会有写。
而且会给你例子

感觉论坛里大部人都会用,但是详细讲解的话,不一定全面~也很难做到给你举例

使用特权

评论回复
9
QWE4562009|  楼主 | 2021-11-11 16:47 | 只看该作者
本帖最后由 QWE4562009 于 2021-11-11 18:07 编辑
Num_Buffer[2]=Key_Counts/100;
        Num_Buffer[1]=Key_Counts/10%10;
        Num_Buffer[0]=Key_Counts%10;
是说除以100取出整数,除以10取出余数,对10取余数?

使用特权

评论回复
10
QWE4562009|  楼主 | 2021-11-11 16:48 | 只看该作者
HWM 发表于 2021-11-10 10:42
大括号{}通常用于程序块,中括号[]则通常用于数组下标。小括号的使用范围通常类似表达式中的括号,包括函数 ...

数组下标是啥含义?我做硬件的 多多指教

使用特权

评论回复
11
QuakeGod| | 2021-11-12 22:14 | 只看该作者
是得好好学习一下。
C语言里面得符号非常多,有句话咋说的来着,说C语言嫌键盘上的标点符号不够用了。
基本上键盘上所有的符号,在C语言里面都用用处。而且每种符号还都有多重含义,
举例 + ++ - -- = == * ** & && | || ......
a(int) 和(int)a 就是不同的涵义。
如果到了C++,就更乱了。
< > <> << >> <<<> <>>> 就能搞懵许多人。
举个例子,下面这句话是C语言里面的合法语句。
a=a+++ ++a;

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

929

主题

2837

帖子

22

粉丝