C++入门讲解

c++编程入门系列之一

数据类型

使用c++语言编程时,需要用到各种变量来存储各种信息,变量保留的是它所存储的值的内存位置,在设计c++语言时,根据存储的信息大小将存储的数据分为不同的类型(节省内存空间),这样操作系统就能够根据变量类型,来分配内存和决定在保留内存中存储信息。
在c++语言的设计中内置了七种基础数据类型:

布尔型 bool,一个字节,表示范围:0和1
字符型 char,一个字节,表示范围:-128 到 127 或者 0 到 255
整型 int ,四个字节,表示范围:-2147483648 到 2147483647
浮点型 float,四 个字节,表示范围:+/- 3.4e +/- 38 (~7 个数字)
双浮点型 double,八个字节,表示范围:+/- 1.7e +/- 308 (~15 个数字)
无类型 void
宽字符型 wchar_t,两个或者四个字节,表示范围:一个宽字符

这些基础数据类型可以使用一个或多个类型修饰符进行修饰:
signed,表示所有范围
unsigned,表示正数
short,表示不超过数据类型范围,具体由编译器厂商决定,例如int占4字节,而short int占2字节。
long, 在 16位操作系统:long:4字节,int:2字节
32位操作系统:long:4字节,int:4字节
64位操作系统:long:8字节,int:4字节
关于数据类型大小的问题可参考更详细的的文章:https://blog.csdn.net/love_x_you/article/details/42846993

查看数据类型大小的一种小技巧;

#include     //头文件
#include  
#include   
using namespace std;     //命名空间
  
int main()  
{  
    cout << "type: \t\t" << "************size**************"<< endl;  
    cout << "bool: \t\t" << "所占字节数:" << sizeof(bool);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "char: \t\t" << "所占字节数:" << sizeof(char);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "signed char: \t" << "所占字节数:" << sizeof(signed char);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "unsigned char: \t" << "所占字节数:" << sizeof(unsigned char);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "wchar_t: \t" << "所占字节数:" << sizeof(wchar_t);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "short: \t\t" << "所占字节数:" << sizeof(short);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "int: \t\t" << "所占字节数:" << sizeof(int);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "unsigned: \t" << "所占字节数:" << sizeof(unsigned);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "long: \t\t" << "所占字节数:" << sizeof(long);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "unsigned long: \t" << "所占字节数:" << sizeof(unsigned long);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "double: \t" << "所占字节数:" << sizeof(double);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "long double: \t" << "所占字节数:" << sizeof(long double);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "float: \t\t" << "所占字节数:" << sizeof(float);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "size_t: \t" << "所占字节数:" << sizeof(size_t);  
    cout << "\t最大值:" << (numeric_limits::max)();  
    cout << "\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "string: \t" << "所占字节数:" << sizeof(string) << endl;  
    // << "\t最大值:" << (numeric_limits::max)() << "\t最小值:" << (numeric_limits::min)() << endl;  
    cout << "type: \t\t" << "************size**************"<< endl;  
    return 0;  
}

代码解析

#include<>是编译器的文件,写好了的操作方式,让我们导入的时候就可以使用,其中还有#include" "是我们自己的写好的代码,让我们可以在当前代码中使用,如果现在不理解的话可以先记下来,慢慢的学会明白的,using namespace std是指一个代码执行的空间,还是不理解的话,可以先记下来,后面会慢慢的讲。
int main(){}是编译器的入口,表明执行此代码的时候从int main(){}函数开始,一句一句的执行,cout<中,其中要注意endl可写也可以不写,原因涉及到缓冲的概念,我们在后面讲解。 sizeof(short); 是一个函数的方法,就是输出所占字节的大小,函数的概念也在后面讲吧,由于是入门篇章,个人建议先记下来,不懂得地方也可以查资料,或者跟进我的文章,我会在后面一点一点的讲清楚。

自定义数据类型

有内置数据类型,当然我们也可以自己定义一些数据类型来使用,或者为已有的数据类型起一个新的名字,语法为(语法是指c++设计者的一些规定写法):

typedef int xiaoxiao;        //xiaoxiao是int类型的另一个名称,也可以使用xiaoxiao来定义另一个整形的变量例如
xiaoxiao xiaoqian;        //xiaoqian就是一个int型的数据变量

由于是入门章节,好多内容都讲的一知半解,主要原因是知识是一个整体,一个简单程序涉及到计算机的原理内容,还有编程的很多概念组成,在本章节,本章节中作者希望大家掌握基础数据类型的名字叫个啥,占多少字节,表示范围多大,并记住一个最简单的模式,头文件,命名空间,main函数,并能输出数据类型的大小就好,其他的知识嘛,慢慢来呗,另关于计算机原理,如果有时间的话,笔者会做一个简单的概述,方便大家能够更好的理解程序,第一篇博客,笔者本着共同学习,共同进步的原则,希望大家对错误点、表述不清楚点、文章内容点、总之就是不爽的地方,多多进行指点

你可能感兴趣的:(编程系列)