C++ 入门教程(六) 基本数据类型和变量
2015-08-24 16:50
691 查看
古银有了个人博客了:小古银的官方网站
大多数情况,我们不是直接输出数字和字符串,而是将数字和字符串保存到内存空间,然后做一些操作(如加减乘除)后再输出。保存数据到内存空间就需要知道变量。变量(variable)是内存中已命名的位置,其中放置程序可修改的值。
变量可以理解为:内存空间,可以存放数字等的值(如123),并且保存的值可以变更(先保存123,再保存321)。
在使用变量前先要了解基本数据类型。
C++11 基本数据类型
在声明定义变量时,必须指定数据类型,来说明 变量保存的类型(小数还是整数等) 和 变量有多大的内存空间。基本数据类型有一下种类:
类型 | 长度(位数) | 长度(字节数) | 取值范围 |
bool | 8 | 1 | false, true |
char | 8 | 1 | -127~127 |
unsigned char | 8 | 1 | 0~255 |
signed char | 8 | 1 | -127~127 |
wchar_t | 16(Windows) 或 32(Linux) | 2(Windows) 或 4(Linux) | -32767~32767(Windows) 或 -2147483647~2147483647(Linux) |
char16_t | 16 | 2 | -32767~32767 |
char32_t | 32 | 4 | -2147483647~2147483647 |
int | 16(16位系统) 或 32(32位系统) | 2(16位系统) 或 4(32位系统) | -32767~32767(16位系统) 或 -2147483647~2147483647(32位系统) |
unsigned int | 16(16位系统) 或 32(32位系统) | 2(16位系统) 或 4(32位系统) | 0~65535(16位系统) 或 0~4294967295(32位系统) |
signed int | 16(16位系统) 或 32(32位系统) | 2(16位系统) 或 4(32位系统) | -32767~32767(16位系统) 或 -2147483647~2147483647(32位系统) |
short int | 16 | 2 | -32767~32767 |
unsigned short int | 16 | 2 | 0~65535 |
signed short int | 16 | 2 | -32767~32767 |
long int | 32 | 4 | -2147483647~2147483647 |
long long int | 64 | 8 | -9223372036854775807 ~ 9223372036854775807 |
signed long int | 32 | 4 | -2147483647~2147483647 |
unsigned long int | 32 | 4 | 0~4294967295 |
unsigned long long int | 64 | 8 | 0~18446744073709551615 |
float | 32 | 4 | |
double | 64 | 8 | |
long double | 64 | 8 |
而 long int 可以省略成 long, short int 可以省略成 short,long long int 可以省略成long long。
标识符
变量名字、函数名字等统称标识符。标识符长度从1到若干字符不等,其中第一字符必须是字母或下划线,随后只能取字母、数字或下划线。变量
定义变量:int main(void) { short s; // 定义短整型变量s int a, b, c; // 定义三个整型变量a, b, c double e, f, g; // 定义三个双精度浮点型变量e, f, g a = 12; // 给变量a赋值12, 就是变量a保存12 e = 1.234; // 给变量e赋值1.234, 就是变量e保存1.234 int d = 0; // 在定义变量时赋一个初始值, 初始化变量d return 0; }
定义变量的位置
定义变量的基本位置有三个:函数内(局部变量)、函数参数的定义中(形式参数)和所有函数之外(全局变量)。局部变量在进入代码块(如 { )时生成,在退出代码块时(如 } )是消亡
形式参数在函数名后面的一堆圆括号中定义(如:int main(int argc,char *argv[])中的
argc 和 argv)
全局变量在程序开始执行就产生,程序退出时消亡(程序中应该尽量减少不必要的全局变量)
int global; // 全局变量, 应该尽量减少不必要的全局变量 // 主函数中 argc 和 argv 都是变量, 叫做函数的参数 int main(int argc, char *argv[]) { // 以下都是局部变量 // 函数参数也是局部变量 // 局部变量离开作用域(如 { })时, 变量消亡 short s; // 定义短整型变量s int a, b, c; // 定义三个整型变量a, b, c double e, f, g; // 定义三个双精度浮点型变量e, f, g a = 12; // 给变量a赋值12, 就是变量a保存12 e = 1.234; // 给变量e赋值1.234, 就是变量e保存1.234 int d = 0; // 在定义变量时赋一个初始值, 初始化变量d return 0; }
相关文章推荐
- 在 Qt4 中使用 C++11
- Visual Studio 2010 Service Pack 1多国语言版下载
- CUDA 4.0 + Visual Studio 开发环境搭建
- Visual Studio 2012/2010/2008 远程调试
- gcc编译C++程序
- centos安装devtoolset-3支持gcc 4.9.2
- g++遇害,谁是凶手?
- 使用eclipse编译含有C++11特性的代码
- eclipse支持c++11
- Web.config配置文件详解
- C++运算符重载简单学习-----菜鸟潇寒
- C++11可变参数函数与for循环
- 小白探访WINDOWS下的驱动(五) 第一个HELLO驱动(插曲-调试环境设置HOST&TARGET)
- Linux G++ 参数简介
- vs2013 编译c++是发现惊天bug
- 无法打开文件“opencv_calib3d240d.lib”
- dcmtk提示无法解析的外部符号(unresolved external symbol)的解决方法
- 简单性能测试函数模板
- 关于C++现状的一些思考
- 用C++11优化矩阵运算的空间和时间效率