一、變量
變量 數據類型 變量名=初始值
常量的定義方式
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;
}