注释:运行截图上传失败直接取消了
1、C++初始
1.1第一个C++程序
编写一个C++程序总共分为4个步骤
-
创建项目
-
创建文件
-
编写代码
-
运行程序
1.1.1创建项目
1.1.2创建文件
1.1.3编写代码
#include <iostream> using namespace std; int main() { cout <<"Hello World" << endl; system("pause"); return 0; }
1.1.4运行程序
1.2注释
#include <iostream> using namespace std; //单行注释 /* 多行注释 main()函数是一个程序的入口 每个程序都有这么一个函数 而且有且仅有一个 在同一个源文件中可能有很多main 所以需要区分开来 例如:main() main1() main2() */ int main() { cout << "Hello World" << endl;//在屏幕中输出一个Hello World system("pause"); return 0; }
1.3变量
作用:给一段指定的内存空间起名,方便操作这段内存
语法:数据类型 变量名 = 初始值
int a =10;
#include <iostream> using namespace std; int main() { //变量的创建方法:数据类型 变量名 = 变量的初始值 int a = 10; cout << "a=" << a << endl; system("pause"); return 0; }
1.4 常量
作用:用于记录程序中不可更改的数据
C++定义常量的两种方式
-
#define宏常量:#define 常量名 常量值
通常在文件上方定义,表示一个常量
-
const修饰的变量:const 数据类型 常量名 = 常量值
通常在变量定义前加关键字const,修饰该变量为常量,不可修改
#include<iostream> using namespace std; #define Day 7 //#define 常量名 常量值 int main() { cout<<"一周共有:"<<Day<<"天"<<endl; //Day=14,错误,Day是一个常量,不能被修改 const int month = 12;//const 数据类型 常量名 = 常量值 //month=24 报错,const修饰的变量也称为常量 cout<<"一年共有"<<month<<"个月"<<endl; system("pause"); return 0; }
1.5关键字
作用:关键字时C++中预先 保留的词(标识符)
-
在定义变量或者常量的时候,不要用关键字
C++关键字如下
1.6标识符命名规则
作用:C++规定给标识符(变量、常量)命名时,有一套自己的规则
-
标识符不能是关键字
-
标识符只能由字母、数字、下划线组成
-
第一个字符必须为字母或下划线
-
标识符中字母区分大小写
建议:给标识符命名时,争取做到见名知意的效果,方便自己和他人的阅读
#include<iostream> using namespace std; /* 标识符命名规则 1、标识符不可以是关键字 2、标识符只能由字母、数字、下划线组成 3、第一个字符必须是字母或下划线 4、标识符区分大小写 */ int main() { int a = 10; //int int=10 int abc = 20; int _abc = 30; int _123abc = 40; cout << a << endl; //cout << A << endl;A与a不是同一个名称 //int 123abc=50 //建议:给变量起名的时候,最好能够见名知意 int num1 = 10; int num2 = 20; int sum = num1 + num2; cout << sum << endl; system("pause"); return 0; }
2、数据类型
C++规定在创建一个变量或者常量时,必须要指定出相应的数据类型,否则无法给变量分配内存
语法:数据类型 变量名=变量初始值
数据类型存在的意义:给变量分配合适的内存空间
2、整型
作用:整型变量表示的是整数类型的数据
#include<iostream> using namespace std; int main() { //短整型 short (-32768--32767) short num1 =32768; //越界了 //整型 int int num2 = 10; //长整型 long long num3 = 10; //长长整型 long long long long num4 = 10; cout << "num1=" << num1 << endl; cout << "num2=" << num2 << endl; cout << "num3=" << num3 << endl; cout << "num4=" << num4 << endl; system("pause"); return 0; }
当short输出值超出范围后,注意看num1的输出
#include<iostream> using namespace std; int main() { //短整型 short (-32768--32767) short num1 =-32769; //越界了 //整型 int int num2 = 10; //长整型 long long num3 = 10; //长长整型 long long long long num4 = 10; cout << "num1=" << num1 << endl; cout << "num2=" << num2 << endl; cout << "num3=" << num3 << endl; cout << "num4=" << num4 << endl; system("pause"); return 0; }
当short输出值超出范围后,注意看num1的输出
3、sizeof
作用:利用sizeof关键字可以统计数据类型所占内存大小
语法:sizeof(数据类型/变量)
#include<iostream> using namespace std; int main() { //整型:short(2) int(4) long(4) long long(8) //我们可以通过sizeof求出数据类型占用内存的大小 //语法:sizeof(数据类型/变量) short num1 = 10; //使用数据类型short cout << "short占用内存空间为:" << sizeof(short) << endl; //也可以用变量num1 cout << "short占用内存空间为:" << sizeof(num1) << endl; int num2 = 10; cout << "int占用内存空间为:" << sizeof(int) << endl; cout << "int占用内存空间为:" << sizeof(num2) << endl; long num3 = 10; cout << "long占用内存空间为:" << sizeof(long ) << endl; cout << "long占用内存空间为:" << sizeof(num3) << endl; long long num4 = 10; cout << "long long占用内存空间为:" << sizeof(long long) << endl; cout << "long long占用内存空间为:" << sizeof(num4) << endl; //short<int≤long≤long long system("pause"); return 0; }
2.3实型(浮点型)
作用:用于表示小数
浮点型变量分为两种:
-
单精度float
-
双精度double
两者的区别在于表示的有效数字范围不同。
数据类型 | 占用空间 | 有效数字范围 |
---|---|---|
float | 4字节 | 7位有效数字 |
double | 8字节 | 15-16位有效数字 |
#include<iostream> using namespace std; int main() { //默认情况下输出一个小数,会显示出6位有效数字 float f1 = 3.1415926f;//如果不写f默认3.14是双精度,float会将其转化为单精度,会多做一步转化 cout << "f1= " << f1 << endl; double d1 = 3.1415926; cout << "d1= " << d1 << endl; //统计float 和double所占内存空间有多大 cout << "float所占用内存空间为:" << sizeof(float) << endl; cout << "float所占用内存空间为:" << sizeof(f1) << endl; cout << "double所占用内存空间为:" << sizeof(double) << endl; cout << "double所占用内存空间为:" << sizeof(d1) << endl; //科学计数法 float f2 = 3e2;//e的后面是正数n,3*10^n cout << "f2= " << f2 << endl; float f3 = 3e-2;//e的后面是负数, 3*10^(-2) cout << "f3= " << f3 << endl; system("pause"); return 0; }