一、变量
变量 数据类型 变量名=初始值
常量的定义方式
1.#define 宏常量 (Day是常量,一旦修改就会报错)
/2.const修饰的变量
#include <iostream>
using namespace std;
//变量 数据类型 变量名=初始值
//常量的定义方式
//1.#define 宏常量 (Day是常量,一旦修改就会报错)
#define Day 7
int main2()
{int a=10;//注意是英文的分号//int int = 10;变量命名是错误的,再给变量或者常量命名时,不要使用c++中的关键字,否则会产生歧义//2.const修饰的变量const int month = 12;//用const修饰了就不能再改了//month = 24;//不要忘了结尾加分号cout << "a=" << a << endl;//双引号里是字符串输出,后面<<跟着的是变量cout << "一周有" << Day << "天" << endl;//endl是换行,前面要加连接符<<cout << "一年有" << month << "月" << endl;system("pause");return 0;
}
二、标识符
标识符(常量、变量)命名规则:
1.标识符不能是关键字
2.标识符只能由字母、数字、下划线组成
3.第一个字符必须是字母或者下划线,不能为1.cpp
4.标识符中字母区分大小写
注:最好做到见名知意
三、变量类型
3.1整型(所占用的内存空间不同)
1.短整型 (2字节)(-32768~32767)
2.整型(四字节)
3.长整型(四字节)
4.长长整型(八字节)
3.2实型(不管哪个都只显示6位有效数字)
1.单精度 float 4字节
2.双精度 double 8字节
3.3字符型
char 变量名='字符' 一个字节
注:1.显示字符变量时,用单引号而不是双引号
2.单引号内只能有一个字符,不可以是字符串
3.字符变量并不是把字符本身放到内存中存储,而是将对应的ASCII编码放入存储单元
字符型对应的ASCII编码 a-97 A-65
0-31是控制字符,无法显示出来的,类似于换行
32-126是键盘上能找到的字符,可以打印出来
转义字符
1.换行符 \n
2.反斜杠 \\
3.水平制表 \t(可以更整齐的输出后面的内容)
4.垂直制表 \v 它的作用是让\v后面的字符从下一行开始输出,且开始的列数为\v前一个字符所在列后面一列。
3.4字符串型
1.c风格字符串 char 变量名[]="字符串值"(注意[]和"",中括号和双引号代表字符串而不是字符)
2.c++风格字符串 string 变量名 = "字符串值" (要包含string头文件)
3.5布尔数据类型 占一个字节
true ——1真 2 33.9
false——0假 0.99 -0.5
#include <iostream>
using namespace std;
#include <string>//用c++风格字符串的时候,要包含这个头文件
int main3()
{//整型(所占用的内存空间不同)//1.短整型 (2字节)(-32768~32767)short num1 = 32769;//超出上限会回到下线,变成负的//2.整型(四字节)int num2 = 32768;//3.长整型(四字节)long num3 = 10;//4.长长整型(八字节)long long num4 = 10;cout << "num1=" << num1 << endl;cout << "num2=" << num2 << endl;cout << "num3=" << num3 << endl;cout << "num4=" << num4 << endl;//sizeof可以统计数据类型所占内存大小 sizeof(数据类型/变量) 单位字节cout << "short类型所占内存大小" << sizeof(short) << endl;cout << "int类型所占内存大小" << sizeof(int) << endl;cout << "long类型所占内存大小" << sizeof(long) << endl;cout << "long long类型所占内存大小" << sizeof(long long) << endl;cout << "num1类型所占内存大小" << sizeof(num3) << endl;//实型(不管哪个都只显示6位有效数字)//1.单精度 float 4字节float f1 = 3.14f;//(默认是double类型,加了f会让它转成单精度)float f2 = 3.14;cout << "f1 = " << f1 << endl;cout << "f1数据存储大小" << sizeof(f1) << endl;//2.双精度 double 8字节double d1 = 314.15926;cout << "d1 = " << d1 << endl;cout << "d1数据存储大小" << sizeof(d1) << endl;//科学技术法float f3 = 3e2;//3*10^2cout << "f3=" << f3 << endl;float f4 = 3e-2;//3*0.1^2cout << "f4=" << f4 << endl;//字符型//char 变量名='字符' 一个字节/*注:1.显示字符变量时,用单引号而不是双引号2.单引号内只能有一个字符,不可以是字符串3.字符变量并不是把字符本身放到内存中存储,而是将对应的ASCII编码放入存储单元*/char ch = 'a';cout << "ch = " << ch << endl;cout << "ch存储数据大小 " << sizeof(ch) << endl;//char ch ="a";错误//char ch ='abcd';错误cout << (int)ch << endl;//强制转换成整型/*字符型对应的ASCII编码a-97A-650-31是控制字符,无法显示出来的,类似于换行32-126是键盘上能找到的字符,可以打印出来*///转义字符//换行符 \ncout << "hello world\n";//反斜杠 \\cout << "\\" << endl;//水平制表 \t(可以更整齐的输出后面的内容)cout << "aaa\thello world" << endl;//一个\t占八个位置,aaa占了三个后面五个用空格表示cout << "aaaaaa\thello world" << endl;cout << "aaaa\thello world" << endl;//垂直制表 \v 它的作用是让\v后面的字符从下一行开始输出,且开始的列数为\v前一个字符所在列后面一列。puts("0155\v2345");//字符串型/*1.c风格字符串 char 变量名[]="字符串值"(注意[]和"",中括号和双引号代表字符串而不是字符)*/char str1[] = "hello";cout << str1 << endl;/*2.c++风格字符串 string 变量名 = "字符串值" (要包含string头文件)*/string str2 = "hello world";cout << str2 << endl;//布尔数据类型 占一个字节/*true ——1真 2 33.9false——0假 0.99 -0.5*/bool flag = true;//flag标志cout << flag << endl;flag = false;cout << flag << endl;cout <<"布尔所占内存空间 " << sizeof(bool) <<"字节" << endl;//数据类型输入 cin >> 变量//int a;//cout << "请给整型变量a赋值:" << endl;//cin >> a;//cout << a << endl;//ctrl+k+c注释bool b = false;cout << "请给布尔类型变量b赋值: "<< endl;cin >> b;cout << b << endl;system("pause");return 0;
}