C 碎片二 数据类型

一、概述

  C 语言包含的数据类型如下图所示:

二、各种数据类型介绍

2.1 整型

  整形包括短整型、整形和长整形。

2.1.1 短整形

  short a=1;

2.1.2 整形

  一般占4个字节(32位),最高位代表符号,0表示正数,1表示负数,取值范围是-2147483648~2147483647,在内存中的存储顺序是地位在前、高位在后,例如0x12345678在内存中的存储如下:

  地址:0x0012ff78  0x0012ff79  0x0012ff7a  0x0012ff7b

  数据:  78      56        34      12

  定义:用int关键字,举例如下:

  int a=6;

2.1.3 长整形

  long a=10;

2.2 浮点型

  浮点型包括单精度型和双精度型。

2.2.1 单精度型

  浮点型,又称实型,也称单精度。一般占4个字节(32位),

  float a=4.5;

  地址:0x0012ff78  0x0012ff79  0x0012ff7a  0x0012ff7b

  数据:  00      00        90      40

2.2.2 双精度型

  一般占8个字节(64位)

  double a=4.5;

  地址:0x0012ff78  0x0012ff79  0x0012ff7a  0x0012ff7b  0x0012ff7c  0x0012ff7d  0x0012ff7e  0x0012ff7f

  数据:  00      00        00      00      00        00      12      40

2.3 字符类型

  在各种不同系统中,字符类型都占一个字节(8位)。定义如下:

  char c=‘a‘;

  也可以用字符对应的ASCII码赋值,如下:

  char c=97;

三、常量及变量

常量:在程序运行过程中,其值不可改变的量

  常量定义格式:const 类型 名称

变量:在程序运行过程中,其值可以改变的量

  变量定义格式:类型 名称

基本数据类型:整型,字符型,实型(浮点型)

整型:int  int = 4

  长整型:long (long int)                        long = 8

  短整型:short (short int)                      short = 2  

实型(浮点型):

  单精度:float                                       float = 4

  双精度:double                                    double = 8

字符型:char   ASCII‘1’,‘A’   char = 1

short、int、long、char、float、double 这六个关键字代表C 语言里的六种基本数据类型。

表示有无符号时需要人为指定:(默认由符号)

  有符号:signed

  无符号:unsigned

  不写,编译器默认是有符号数

程序中的整数,默认是int,小数默认是double

变量:代表具有名字的一块存储空间

四、标识符的命名规范

1. 只能有数字,字母,下划线组成

2. 首字符不能是数字

3. 区分大小写

4. 不能是关键字(保留字),关键字是唯一代表某一个意思的字符集合

5. 习惯性命名

  n、i、j 等通常作为循环变量使用

  程序中不得出现仅靠大小写区分的相似的标识符  x X, o O

  含义标识命名规则,变量命名使用名词性词组,函数命名使用动词性词组(getAaaBbbCcc)

  匈牙利命名法:变量名前面加上相应的小写字母的符号标识作为前缀,标识出变量的作用域,类型等

    作用域前缀命名规则 (global,function,auto) gAaaBbbCcc

    数据类型前缀命名规则 (char,int,float,long,double,unsigned) iAaaBbbCcc

  骆驼命名法(camel):当标识符由多个词组成时,第一个词的首字母小写,以后每个词的第一个字母大写,其余全部小写  aaaBbbCcc

  帕斯卡命名法(pascal):当标识符由多个词组成时,每个词的第一个字母大写,其余全部小写  AaaBbbCcc

    对比:骆驼命名法是首字母小写,而帕斯卡命名法是首字母大写

  下划线分割多个词法是c出现后开始流行起来的,在许多旧的程序和UNIX这样的环境中,它的使用非常普遍  aaa_bbb_ccc

  

  所有宏定义、枚举常数、只读变量全用大写字母命名,用下划线分割单词

  禁止使用函数名作为某一个变量名

  命名应当直观且可以拼读,可望文知意,便于记忆和阅读

五、说明

1. C语言中的语句是以分号结尾的表达式

2. sizeof关键字是用来计算所占空间大小的

3. 定义变量时,若不初始化,则其值不确定

4. 定义常量时,若不初始化,则该常量无意义

因此常量定义时必须初始化。

六、续

  对字符的理解:计算机发明是用来处理数据的,也就是对(整型int,浮点型float,double)这些数据的处理,这些都好处理(进制转换—>二进制)直接编码。随着发展,人们向想来处理字符,但字符怎么转换成二进制,于是就又有了编码(ascii,utf-8,gbk),先把字符(汉字)或其他语言转换成数字,再将数字转换为二进制存进计算机,所以高级语言编程字符以上级别的语言都要在编译阶段转换成数字(十/八/十六进制)在汇编阶段转换成二进制最终存进计算机中。

时间: 2024-07-28 22:57:09

C 碎片二 数据类型的相关文章

go-基础知识二-数据类型-变量

1.0 变量的含义:变数或变量,是指没有固定的值,可以改变的数.变量以非数字的符号来表达,一般用拉丁字母.变量是常数的相反.变量的用处在于能一般化描述指令的方式.若果只能使用真实的值,指令只能应用于某些情况下.变量能够作为某特定种类的值中任何一个的保留器. 2.0 GO语言 变量的表现形式 2.1 使用var关键字是Go最基本的定义变量方式,与OC不同的是Go把变量类型放在变量名后面: //定义一个名称为“variableName”,类型为"type"的变量 var variableN

[转载]JNI学习积累之二 ---- 数据类型映射、域描述符说明

本文转载于:http://blog.csdn.net/qinjuning 在Java存在两种数据类型: 基本类型 和 引用类型 ,大家都懂的 . 在JNI的世界里也存在类似的数据类型,与Java比较起来,其范围更具严格性,如下: 1.primitive types ----基本数据类型,如:int. float .char等基本类型 2.reference types----引用类型,如:类.实例.数组. 特别需要注意:数组 ------ 不管是对象数组还是基本类型数组,都作为reference

Python学习总结之二 -- 数据类型

带你走进数据类型 一:整数.浮点数 Python中整数和浮点数的定义以及运算和C++都是一样的,我在这里就不需多说了,我就说明一点:Python相对于C/C++而言,定义整数没有int 和 long long 这些区分的,直接赋值即可.这就体现出了Python简洁的功能. 二:布尔值.空值 首先我们先谈谈Python中的布尔值True和False.在Python中可以直接使用True和False(请注意大小写),也可以通过表达式计算出True或者False. 另外,还有三种常见的布尔运算符and

python(二)数据类型

一.整数 创建方法 i = 10 i = int(10) i = int("10",base=2)  #“”中是几进制的表示,base是选择要表示的进制,如base=2,用2进制的表示,那么“10”就是2进制的表示码 >>> int.bit_length(10)  #求数字用2进制表示最少用几位,如10的二进制:1010,需要4位 4 >>> bin(10) '0b1010' >>> int.__abs__(-10)     #求一

数据库之二数据类型、约束、表操作

——Sept. 28th, 2015 Mon.15:30 PM 一.数据类型 (1) 整型 TINYINT                    1字节    //TINYINT UNSIGNED SMALLINT                 2字节 MEDIUMINT             3字节 INT                            4字节 BIGINT                      8字节 (2)浮点型 FLOAT[(M, D)] DOUBLE[(

Redis 学习(二) —— 数据类型及操作

Redis支持string.list.set.zset.hash等数据类型,这一篇学习redis的数据类型.命令及某些使用场景. 一.String,字符串 字符串是 Redis 最基本的数据类型.一个字符串最大为 512M 字节.字符串数据类型适用于很多场景,例如,缓存 HTML 片段或者页面. Redis 字符串是二进制安全的,也就是说,一个 Redis 字符串可以包含任意类型的数据,例如一张 JPEG 图像,或者一个序列化的对象. 我们可以把字符串当做位数组(位图)来处理,很容易统计一些基于

Python3学习笔记(二)--数据类型:字符串、列表、元组、数字、字典、集合

变量赋值 Python 中的变量赋值不需要类型声明. 每个变量在内存中创建,都包括变量的标识,名称和数据这些信息. Python中允许为多个变量同时赋值 a = b = c =1 a, b, c = 1, 'b', 1.1 # 将1, 'b'分别赋值给a.b,1.1赋值给c 标准数据类型 Python有五个标准的数据类型 String(字符串) List(列表) Numbers(数字) Tuple(元组) Dictionary(字典) Python字符串 String(字符串)是Python中最

《MySQL技术内幕——SQL编程》读书笔记(二)——数据类型

对数据类型的选择将影响与数据库交互的应用程序的性能. 1.通常来说,如果一个页内可以存放尽可能多的行,那么数据库的性能就越好,因此选择一个正确的数据类型至关重要. 2.另一方面,如果在数据库中创建表时选择了错误的数据类型,那么后期的维护成本可能非常大,用户需要花大量时间进行ALTER TABLE 操作. 1. 数据类型 1. UNSIGNED 将数字类型无符号化. 例如: INT 的类型范围是 -2147483648 ~ 2147483647 INT UNSIGNED 的 类型范围是 0 ~ 4

Python 系列 二 数据类型

1.1 Python中的数据类型 Python使用对象模型来储存数据,每一个数据类型都有一个内置的类,每新建一个数据,实际就是在初始化生成一个对象,既所有数据都是对象: 对象三个特种: 1.身份:内存地址,可以用id()获取 2.类型:决定了该对象可以保存什么类型值,可以操作何种操作,需要遵循什么规则,可以用type()获取 3.值:对象保存的真实数据 1.2 数字 1.2.1 int (整型) 1.在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-21474836