C 语言学习(13) ---- C语言中的数据

基本数据类型

C语言中基本数据类型包括 整型(包括字符型),浮点型,空类型,指针类型,构造类型(结构体,联合体,数组)

基本数据类型.jpg

头文件 limits.h 定义一系列宏,表示各个类型的最大和最小值

浮点类型分为三种:float,double,long double
一般32位系统上 float 占四个字节,double 占八个字节

相等的类型声明:
short /signed short /short int /signed short int
unsigned short /unsigned short int
int /signed int /signed
unsigned /unsigned int
long /signed long /signed long int
unsigned long /unsigned long int

只有 char 类型 分为 signed char /char /unsigned char 三种不同的类型,char 类型不是默认为 signed char 类型

字面量

字面量是字面量常量的缩写,这个一个实体,指定了自身的值,并且不允许发生改变,这个特点非常重要,因为C语言允许命令常量
字面量包括整型字面量,浮点字面量,字符型字面量

  1. 整型字面量占用字节大小取决于字面量的后缀,后缀可以是 U,L,L 或者小写的 u l l
    添加后缀 L 表示该字面量为 long 类型,U 表示 unsigned 类型,也可以组合使用 UL(ul)表示 unsigned long
    整型字面量也可以用 8 进制或者 16 进制表示,8进制以 0 开头,16进制以 0x 开头

  2. 字符型字面量,它的类型总是 int 类型,并且不可以使用 U 和 L 的后缀

  3. 浮点类型字面量默认都是 double 类型的,后缀加上 L(l)表示它是一个 long double 类型,或者加上 F(f)表示它是一个浮点类型

声明和定义

声明只是通知编译,此变量已经关联到一块内存上,同时此变量的变量名已经被占用 比如 extern int i 就是一个声明
定义是创建了对象并且为对象创建了内存 比如 int i,定义了变量 i ,并且分配了 sizeof(int) 大小的内存

链接属性和存储类型

链接属性:
当组成一个程序的各个源文件分别被编译后,所有的目标文件从那些一个或者多个函数库中引用的函数链接在一起,形成可执行文件,标志符的链接属性决定如何处理不同的文件出现的标志符,标志符的作用域和链接属性相关
链接属性分为三种:external,internal,none

  1. internal 链接属性的标志符在同一个文件所有声明都指向一个实体
  2. external 链接属性的标志符无论声明多少次,不同的源文件声明的都指向一个实体

下面的程序,b,c,f 的链接属性是 external,其余为none

链接属性示意.jpg

如果另一个文件也声明了标志符 b,并且调用了函数 c,它们实际上访问的是这个函数的实体
其他文件要使用标志符 b 和 函数 c,需要使用 extern 声明,用以通知编译器 标志符 b 和函数 c 的存在

  1. 关键字 extern 和 static
    关键字 extern 和 static 用于在声明中修改标志符的链接属性,如果某个声明在正常情况下具有 external 链接属性,加上 static 关键字可以将其链接属性变为 internal 比如:
    static int b;
    变量 b 就会被这个源文件私有,其他源文件如果链接到 b 的同名变量,那么将是另一个不同的变量
    函数加上 static 声明,表示此函数为该源文件内部私有,其他源文件,其他源文件也可以定义同名函数,那将是另外一个函数
    static int c(int d)

常量

C语言中的常量分为整数常量,浮点常量,字符常量和字符串常量;

C语言常量类型 说明
整数常量 整数常量可以是十进制、八进制或十六进制的常量,前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,不带前缀则默认表示十进制;
浮点常量 浮点常量由整数部分,小数点,小数部分和指数部分组成; 当使用小数形式表示时,必须包含整数部分,小数部分,或同时包含两者;当使用指数形式表示时, 必须包含小数点、指数,或同时包含两者,带符号的指数是用 e 或 E 引入的
字符常量 字符常量可以是一个普通的字符(例如 'x')、一个转义序列(例如 '\t'),或一个通用的字符(例如 '\u02C0')
字符串常量 字符串字面值或常量是括在双引号 " " 中的

转义字符含义表:
\ \ 字符
' ' 字符
?? ?字符
" " 字符
? ? 字符
\a 警报铃声
\b 退格键
\f 换页符
\n 换行符
\r 回车
\t 水平制表符
\v 垂直制表符
\ooo 一到三位的八进制数
\xhh . . . 一个或多个数字的十六进制数

C语言中常量的定义形式有两种:

  • 使用 #define 预处理器,
  • 使用 const 关键字

常量类型的后缀包括 F,U,L,使用小写(f,u,l)也是一样的效果
将 F 或者 f 附加到带小数点的数字,表示float类型的常量
将 L 附加到带小数点的数,表示 long double 类型
对于整数类型,U 表示无符号类型(unsigned int),L 表示long int 类型,UL 表示unsigned long int类型

C99 允许通过指定后缀LL(或者ll)指定 long long 类型

Example date type
1 123 21000 -234 int
34567L -34L long int
10000U 987u 40000U unsigned int
129.34F 4.34e-3f float
123.23 1.0 -0.98763241 double
1001.2L long double

作用域

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,271评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,275评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,151评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,550评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,553评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,559评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,924评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,580评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,826评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,578评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,661评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,363评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,940评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,926评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,156评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,872评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,391评论 2 342

推荐阅读更多精彩内容