C程序中 : 冒号的作用是啥?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C程序中 : 冒号的作用是啥?相关的知识,希望对你有一定的参考价值。

typedef struct

char mic:1;
char mic20:1;
char line:1;
char fmin:1;
ain_t;

这是位域
冒号后面的数字表示结构成员所占的位长度

举个例子
// VC2005下测试通过
#include <stdio.h>
#include <string.h>

struct t
unsigned char a : 1;
unsigned char b : 1;
unsigned char c : 1;
unsigned char d : 1;
unsigned char e : 2;
unsigned char f : 2;
;

int main(void)

struct t tt;
memset(&tt, 0, sizeof(struct t)); // 对变量置0
tt.a = 1; // 第一位置1
tt.c = 1; // 第三位置1
tt.f = 3; // 第七位和第八位置1
// 结果为 1100 0101 = 0xc5
printf("size of t = %d\n", sizeof(t));
printf("tt = %x\n", (unsigned int)*(unsigned char *)&tt);
getchar();
return 0;
参考技术A 赋予变量默认值。 参考技术B 大哥,,,那是分号,不是冒号。。- -#

c 语言里的 ::双冒号是啥意思啊

c 语言里的 ::双冒号是什么意思啊 如调 用API ::findwindow () , 这样。

双冒号::,是C++语言里面的符号。并不是C语言的。
它表示某个“类”里面的函数。
参考技术A 正如楼上,是作用域符号(::),表示后面的变量或函数是属于前面的类的。例如:
myclass::MyFunc()表示MyFunc()函数是类myclass的成员函数。
参考技术B 域操作符吧,一般用在类里

以上是关于C程序中 : 冒号的作用是啥?的主要内容,如果未能解决你的问题,请参考以下文章

c语言的双冒号是啥意思::

C语言中变量加冒号是啥意思

C语言里两个冒号是啥意思?

冒号在C语言中起啥作用

以冒号为前缀的单词在 Ruby 中的作用是啥? [复制]

c语言中,函数定义中的冒号是啥意思?