您好,欢迎来到华佗小知识。
搜索
您的当前位置:首页C语言符号意义大全

C语言符号意义大全

来源:华佗小知识
C语言符号意义大全

运算符 () [] -> . ! ~ ++ -- + - * & (类型) sizeof 间接,取地址,类型转换,求大小 * / % + - << >> < <= >= > == != & ^ | && || : = += -= *= /= &= ^= |= <<= >>= , 逗号(顺序) 由左向右 乘,除,取模 加,减 左移,右移 小于,小于等于,大于等于,大于 等于,不等于 按位与 按位异或 按位或 逻辑与 逻辑或 条件 各种赋值 由左向右 由左向右 由左向右 由左向右 由左向右 由左向右 由左向右 由左向右 由左向右 由左向右 由右向左 由右向左 解释 结合方式 括号(函数等),数组,两种结构成员由左向右 访问 否定,按位否定,增量,减量,正负由右向左 号, 补充回答: 上面给出的是其运算符,下面给出32个关键字及其含义:

auto :声明自动变量 一般不使用 double :声明双精度变量或函数 int: 声明整型变量或函数 struct:声明结构体变量或函数 break:跳出当前循环

else :条件语句否定分支(与 if 连用) long :声明长整型变量或函数 switch :用于开关语句

case:开关语句分支 enum :声明枚举类型 register:声明积存器变量

typedef:用以给数据类型取别名(当然还有其他作用) char :声明字符型变量或函数

extern:声明变量是在其他文件正声明(也可以看做是引用变量) return :子程序返回语句(可以带参数,也看不带参数) union:声明联合数据类型 const :声明只读变量 float:声明浮点型变量或函数 short :声明短整型变量或函数 unsigned:声明无符号类型变量或函数 continue:结束当前循环,开始下一轮循环 for:一种循环语句(可意会不可言传) signed:生命有符号类型变量或函数

void :声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用)

default:开关语句中的“其他”分支 goto:无条件跳转语句 sizeof:计算数据类型长度

volatile:说明变量在程序执行中可被隐含地改变 do :循环语句的循环体 while :循环语句的循环条件 static :声明静态变量 if:条件语句

下面是我关于C语言中各种数据类型长度的总结:(参考The C Programming Language)

1. c语言中的整数类型有char, short, int, long等几种, 下面是C语言对每种数据类型长度的规定:

(a). short和long类型的长度不相同 (b). int类型通常同具体机器的物理字长相同

(c). short通常是16bits, int通常是16bits or 32bits每种编译器可以根据硬件的不同自由确定, 但是short和int必须最少是16bits, 而long类型必须最少是32bits, 并且short必须比int和long类型要短。

2. sizeof() 运算符返回的是一种数据类型中所包含的字节数(bytes), AnsiC规定sizeof(char)必须返回1,当sizeof作用于数组时, 返回的是数组中所有成员所占的字节数(注意并不是数组中成员的个数), 当sizeof()作用于结构体和公用体时,返回的不仅仅是数据成员总的字节数, 还包括编译器为了实现字节对其而填充的那些字节。

以前写程序也隐隐约约的懂得这些规则,但是一直以为char类型必须是8bits的,但是最近做了一个嵌入式DSP项目,编译器手册上明明写着char类型就是16bits的,无奈翻出\"The C Programming Language\"一查才发现ANSI C对于char类型的长度并没有作硬性规定。以前写程序不太注意数据类型的可移植性, 这次项目中用到的以前的代码都要重新检查数据类型长度的问题。

C++数据类型长度问题:

一、字节和字长

字节,八位就是一个字节,是固定概念。字长是指计算机一次能处理的二进制数据的长度,是一个非固定的概念。例如,8位计算机的字长为8,即一个字节, 32位计算机的字长位32,即4个字节,同理,位计算机的字长为,即8字节。

二、C++中的数据类型

1、字符型数据char,该类型始终是一个字节长,即8位。

2、整形int、短整型short和长整形long。通常int为一个字长,short为半个字长,long为一个或2个字长(在32位机器中为一个字长)。

3、浮点型float、双精度double、和长双精度long double,分别表示单精度浮点数 双精度浮点数和扩展精度的浮点数值。典型情况下,float 为一个字,double是两个字,long double为三个或四个字。

Type Bytes Bits Range short int 2 16 -32,768 -> +32,767 (32kb) unsigned short int 2 16 0 -> +65,535 (Kb) unsigned int 4 32 0 -> +4,294,967,295 ( 4Gb) int 4 32 -2,147,483,8 -> +2,147,483,7 ( 2Gb) long int 4 32 -2,147,483,8 -> +2,147,483,7 ( 2Gb) signed char 1 8 -128 -> +127 unsigned char 1 8 0 -> +255 float 4 32 double 8 long double 12 96 Type Bytes Bits Range short int 2 16 -32,768 -> +32,767 (32kb) unsigned short int 2 16 0 -> +65,535 (Kb) unsigned int 4 32 0 -> +4,294,967,295 ( 4Gb) int 4 32 -2,147,483,8 -> +2,147,483,7 ( 2Gb) long int 4 32 -2,147,483,8 -> +2,147,483,7 ( 2Gb) signed char 1 8 -128 -> +127 unsigned char 1 8 0 -> +255 float 4 32 double 8 long double 12 96 Type Bytes Bits Range short int 2 16 -32,768 -> +32,767 (32kb) unsigned short int 2 16 0 -> +65,535 (Kb) unsigned int 4 32 0 -> +4,294,967,295 ( 4Gb) int 4 32 -2,147,483,8 -> +2,147,483,7 ( 2Gb) long int 4 32 -2,147,483,8 -> +2,147,483,7 ( 2Gb) signed char 1 8 -128 -> +127 unsigned char 1 8 0 -> +255 float 4 32 double 8 long double 12 96

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务