在C\C++中,数据具有不同的类型,类型定义了变量的数值范围以及可进行的操作,变量用于在内存中保存数据,每个变量都必须由确定的数据类型。
C\C++中数据类型可分为基本数据类型和复合数据类型,也可把数据类型分为内置的类型和用户定义的类型两大类。用户定义的类型在使用以前必须先定义,结构、枚举和联合类型都是用户定义类型,类类型是C++中体现面向对象设计思想的部分,也属于用户自定义类型;内置的类型是指C\C++直接提供的类型。
基本数据类型Void类型用于指定一个函数没有返回值,或者作为指针类型,表示该指针指向未知类型的变量。
整型变量可用short、int、long定义,区别在于数据占用的机器字节数。默认情况下,整数常熟以十进制形式表示,前缀0表示是八进制常数,前缀0x或0X表示是十六进制常数。
浮点型变量可用float或double定义,double在内存中占用的字节数更多,所以有效位数更多(精确度更高),表示的数字范围也更大。
字符变量用char定义,一个字符变量占用一个字节,存放该字符的编码(常用ASCII码)。
程序中的字符常量用一对单引号括起来,例如‘A’。C++中还有一些不能打印的特殊字符,可以用它们的编码指定。还有一些转移字符,如‘\n’表示换行、‘\r’表示回车等。
字符串是一个连续的字符系列,用特殊字符‘\0’结尾。
例子cout"AStringCanbewriteonmultilines\n";
cout"A\
String\
Canbewriteonmutilines\n";
需要注意的是,“A”与‘A’是不同的,“A”是由两个字符组成的字符串,而后者只有一个字符。最短的字符串是空字符串“”,它仅由一个结尾符‘\0’组成。
在C++中,布尔类型变量用bool关键字定义,其值为true或false。True和false是C++的关键字。
C语言没有提供bool类型,仅规定0表示逻辑“假”,非0表示逻辑“真”。
程序中经常使用常量,定义常量的一般形式为:
·const类型名字=值;
其中,“类型”是指常量的类型,如short、long和double等;“名字”是指常量的名字;而“值”是指赋给常量的、合适的数据类型的数值。
枚举类型枚举就是把这种类型数据可取的值逐一列举出来。枚举类型是一种用户定义的数据类型,其一般定义形式为:
·enum枚举类型名
{
标识符,
标识符,
···
标识符,
};
结构体和联合类型结构体类型
结构体类型可以把一个数据元素的各个不同的数据项聚合为一个整体。结构体类型的声明格式为:
·struct结构体名{
成员表列
}变量名表列;
在C++中,结构体名就是结构体类型名。
例如:一个复数z=x+yi包含了实部x和虚部y两部分,可以定义一个表示复数的结构体类型Complex为:
structTattooProgrammer
{
doublere;//复数的实部
doubleim;//复数的虚部
};
在C程序中,需要用typedef为结构体类型命名
typedefstruct
{
doublere;
doubleim;
}TattooProgrammer;
一个结构体变量的存储空间长度等于其所有成员所占空间长度之和。
联合类型联合类型的声明格式为:
·union联合名{
成员表列
}变量名表列;
例如,定义联合类型DATA及其变量a
unionDATA{
inti;charch;floatf;
};
DATAa;
一个联合类型变量的存储空间的大小等于其占用空间最大的成员的大小,所有成员变量占用同一段内存空间,如下图所示。
本节内容结束,有关运算符等知识将结合后期例题一同教学,这里不单独讲解。
如果有什么意见或建议,问题等。可以在文章底部留言区评论,小编会在第一时间让TattooProgrammer给大家回答。
?ps:本文内容由TattooProgrammer(新浪微博
R-这个程序员有纹身)作者提供 白颠风是怎么引起的台湾治疗白癜风最好的医院