原创 C语言中“:”的使用方法[转]

2009-8-20 10:36 2606 7 7 分类: MCU/ 嵌入式

从网上看到这篇文章不错,学习一下。


在C语言中,有一个符号——>“:”,此符号的使用归纳起来有下面三种用法:


1:标号识别,用于表示程序的位置。这个在汇编语言中最常用,在C语言中有时也需要用到。比如:


                                    LOOP:


                                               {


                                                                //在此处添加相应的C程序


                                                }


                                               goto LOOP;


2:条件运算符——>   ?   :该运算符是C语言中唯一的三目运算符,运算方向“自左向右”。


使用格式:表达式1?表达式2:表达式3。


条件运算符的运算过程:


         1):计算表达式1的值;


         2):如表达式1的值为“真”(非0),则计算表达式2的值,并把表达式2的值作为整个条件表达式的值;


        3):如表达式1的值为“假”(00),则计算表达式3的值,并把表达式3的值作为整个条件表达式的值;


比如:Max = a>b?a:b;          此表达式最后的计算结果(Max)为a,b中较大的变量的值.


3:位域。C语言中为了节省空间的一种常见用法。用于变量存储空间的二进制“位”的分配。


比如:        struct Data{                                       //该结构体定义了一个结构体类型


                                       int a:8;                            //结构体中包含三个整型变量,如果


                                       int b:6;                           //没有使用“:”位域,则改结构体


                                       int c:2;                           //占用6个字节空间。但使用了“:”


                                     };                                    //则该结构体只占用两个字节的空间


                                                                           //其中 a占用一个字节,b占6个二进制


                                                                           //位,c占两个二进制位。


4:switch-case语句。这个应该是用得最频繁的。格式如下:


                                                switch(表达式)
                                               {
                                                          case常量表达式1:
                                                                   语句1;
                                                                   break;
                                                          case常量表达式2:
                                                                  语句2;
                                                                  break; //停止
                                                          default:
                                                           语句m;
                                                           break;
                                              }


 

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
7
关闭 站长推荐上一条 /3 下一条