網(wǎng)站高并發(fā)前端怎么做會(huì)計(jì)培訓(xùn)班多少錢
目錄
一、軟件使用
二、C++基礎(chǔ)規(guī)則補(bǔ)充
關(guān)鍵字
整型取值范圍
浮點(diǎn)型取值范圍
字符型使用規(guī)則
字符串型使用規(guī)則
布爾類型
常用的轉(zhuǎn)義移字符?
三、數(shù)組、函數(shù)、指針、結(jié)構(gòu)體補(bǔ)充
1.數(shù)組?
2.函數(shù)
聲明:
分文件編寫(xiě):
值傳遞:
?3.指針
空指針:
野指針:
利用指針訪問(wèn)數(shù)組中的元素:
利用指針在函數(shù)修改實(shí)參的值:?
地址傳遞:
const修飾指針:
1)const修飾指針--常量指針
?2)const修飾常量--指針常量
?3)const既修飾指針,又修飾常量
以冒泡排序?yàn)槔叩慕Y(jié)合應(yīng)用
4.結(jié)構(gòu)體?
結(jié)構(gòu)體嵌套
結(jié)構(gòu)體做函數(shù)參數(shù)
結(jié)構(gòu)體const使用場(chǎng)景?
四、C++語(yǔ)句及函數(shù)?
三目運(yùn)算符
?switch語(yǔ)句
goto語(yǔ)句
system("pause")的使用
sizeof()的使用
stoi( )函數(shù)
一、軟件使用
Visual Studio
打開(kāi)在右側(cè)的管理器源代碼下創(chuàng)建文件
二、C++基礎(chǔ)規(guī)則補(bǔ)充
關(guān)鍵字
定義常量變量(標(biāo)識(shí)符)不可使用關(guān)鍵字作名字
標(biāo)識(shí)符字母區(qū)分大小寫(xiě)
整型取值范圍
short:1*10^4
int:1*10^9
long long:1*10^19
以上為約數(shù)
浮點(diǎn)型取值范圍
float:7位有效數(shù)字
double:15位有效數(shù)字
字符型使用規(guī)則
1)用單引號(hào)將字符括起來(lái)
2)單引號(hào)中只能有一個(gè)字符,不能是字符串
3)其實(shí)際上儲(chǔ)存的是字符的ASCII碼
char name = 'a';
字符串型使用規(guī)則
加頭文件#include<string>
布爾類型
true為1,false為0
bool a = true;
cout << a;
輸出結(jié)果為1?
常用的轉(zhuǎn)義移字符?
"\\":輸出\
"\t":水平制表符(一共占8個(gè)位置,不滿用空格補(bǔ)齊)
主要為了整齊的輸入數(shù)據(jù)
cout << "aa\t123" << endl;
cout << "aaa\t123" << endl;
cout << "aaaa\t123" << endl;
三、數(shù)組、函數(shù)、指針、結(jié)構(gòu)體補(bǔ)充
1.數(shù)組?
?直接輸出數(shù)組名可以查看數(shù)組的首地址
若想具體查看其中某一個(gè)具體元素的地址,則在輸出的時(shí)候前加& (取址符)
2.函數(shù)
聲明:
函數(shù)的聲明可以寫(xiě)多次,但定義只有一次
(聲明即為函數(shù)的第一行)
分文件編寫(xiě):
值傳遞:
即在函數(shù)調(diào)用時(shí)實(shí)參將數(shù)值傳入給形參
值傳遞時(shí),如果形參發(fā)生改變,并不會(huì)影響實(shí)參
比如,在寫(xiě)到交換函數(shù)時(shí),會(huì)存在這樣的錯(cuò)誤寫(xiě)法:
#include<iostream>
using namespace std;
void swap(int x, int y)
{int f = x;x = y;y = f;
}
int main()
{int a = 10;int b = 20;swap(a, b);cout << a << ' ' << b;return 0;
}
這時(shí)運(yùn)行結(jié)果輸出的a,b的值并沒(méi)有發(fā)生交換
原因在于形參只在函數(shù)內(nèi)有用,當(dāng)實(shí)參傳遞值給形參時(shí),形參只是作為實(shí)參的臨時(shí)拷貝?,值傳遞時(shí)并沒(méi)有改變實(shí)參。改變值需要傳遞地址進(jìn)行調(diào)用,使函數(shù)內(nèi)部可以操縱函數(shù)外部的變量
如果函數(shù)不需要返回值,聲明可以寫(xiě)void,且可以不寫(xiě)return
?3.指針
通過(guò)指針間接訪問(wèn)內(nèi)存
int a = 10;
int * p;
p = &a;
*p =1000;
這里輸出p為a的地址
在指針前加*代表解引用,找到指針指向的內(nèi)存中的數(shù)據(jù)?
空指針:
指針變量指向內(nèi)存中編號(hào)為0的空間
用途:初始化指針變量
空指針指向的內(nèi)存不可訪問(wèn)(0~255之間的內(nèi)存編號(hào)是系統(tǒng)占用的)
int * p=NULL;
野指針:
?指針變量指向非法的內(nèi)存空間(一種錯(cuò)誤)
空指針和野指針都不是用戶申請(qǐng)的空間,不要進(jìn)行訪問(wèn)
利用指針訪問(wèn)數(shù)組中的元素:
int a[10] = { 1,2,3,4,5,6,7,8,9,10 };
int* p = a;//a就是數(shù)組的首地址
cout << *p << endl;//訪問(wèn)第一個(gè)元素
p++;//讓指針向后偏移四個(gè)字節(jié)
cout << *p << endl;//訪問(wèn)第二個(gè)元素
return 0;
利用指針在函數(shù)修改實(shí)參的值:?
地址傳遞:
#include<iostream>
using namespace std;
void swap(int *x, int *y)
{int f = *x;*x = *y;*y = f;
}
int main()
{int a = 10;int b = 20;swap(&a,&b);cout << a << ' ' << b;return 0;
}
const修飾指針:
分三種情況
1)const修飾指針--常量指針
指針的指向可以改,指針指向的值不可以改
const int * p = &a;
?2)const修飾常量--指針常量
指針的指向不可以改,指針指向的值可以改
int * const p = &a;
?3)const既修飾指針,又修飾常量
指針的指向,指針指向的值都可以改
const int * const p = &a;
以冒泡排序?yàn)槔叩慕Y(jié)合應(yīng)用
#include<iostream>
using namespace std;
void Paixu(int*a, int len)
{for (int i = 0; i < len - 1; i++){for (int j = 0; j < len - 1 - i; j++){if (a[j] > a[j + 1]){int f = a[j];a[j] = a[j + 1];a[j + 1] = f;}}}
}
void Prin(int* a, int len)
{for (int i = 0; i < len; i++){cout << a[i];}
}
int main()
{int a[10] = { 4,3,6,9,1,2,10,8,7,5 };int len = sizeof(a) / sizeof(a[0]);Paixu(a, len);Prin(a, len);return 0;
}
4.結(jié)構(gòu)體?
#include<iostream>
using namespace std;struct Student
{string name;int age;double score;
}stu;//stu作為結(jié)構(gòu)體變量
給結(jié)構(gòu)體賦初始值:
int main()
{
//方法一stu.name = "小明";stu.age = 18;stu.score = 99.7;
//方法二struct Student stu[3] ={{ "小七", 19, 100},{ "小可", 23, 90 },{ "小時(shí)", 18, 80 }};
//方法三(結(jié)構(gòu)體指針)Student* p = &stu[0];cout << p->age;return 0;
}
結(jié)構(gòu)體嵌套
?賦值時(shí):結(jié)構(gòu)體變量1.結(jié)構(gòu)體變量2
結(jié)構(gòu)體做函數(shù)參數(shù)
構(gòu)造函數(shù)
//值傳遞
void printStudent1(struct Student stu)
{//cout<<......
}
//地址傳遞
void printStudent2(struct Student* p)
{//cout<<......
}
?傳遞
//值傳遞
printStudent1(stu);
//地址傳遞
printStudent2(&stu);
結(jié)構(gòu)體const使用場(chǎng)景?
在使用函數(shù)對(duì)結(jié)構(gòu)體進(jìn)行地址傳遞時(shí),在函數(shù)中誤改結(jié)構(gòu)體中的值會(huì)影響到實(shí)參本身,當(dāng)在函數(shù)中對(duì)傳遞的指針使用const,則使函數(shù)無(wú)法影響實(shí)參。
void printStudent(const Student *stu)
{//cout<<....
}
四、C++語(yǔ)句及函數(shù)?
三目運(yùn)算符
格式:表達(dá)式1?表達(dá)式2:表達(dá)式3
如果表達(dá)式1成立,則執(zhí)行表達(dá)式2;不成立則執(zhí)行表達(dá)式3?
其返回的變量可以繼續(xù)賦值
?switch語(yǔ)句
執(zhí)行多條件分支語(yǔ)句
格式:switch(表達(dá)式)
? ? ? ? ? {
? ? ? ? ? ? ? ? case? 結(jié)果1:執(zhí)行語(yǔ)句;break;
? ? ? ? ? ? ? ? ?………………
? ? ? ? ? ? ? ? default:執(zhí)行語(yǔ)句;break;(前面的都不符合)
? ? ? ? ? }
goto語(yǔ)句
無(wú)條件跳轉(zhuǎn)語(yǔ)句
格式:goto 標(biāo)記
即如果標(biāo)記名稱存在,在執(zhí)行到goto語(yǔ)句時(shí),會(huì)跳轉(zhuǎn)到標(biāo)記的位置
system("pause")的使用
1)通常用于在命令行窗口中暫停程序的執(zhí)行,等待用戶按下任意鍵繼續(xù)
2)目的在于在程序執(zhí)行完畢后保持命令行窗口打開(kāi),以便用戶能夠查看程序的輸出結(jié)果
sizeof()的使用
顯示數(shù)據(jù)類型占用內(nèi)存的大小(字節(jié))
括號(hào)里放數(shù)據(jù)類型或變量
常用于求數(shù)組中元素的個(gè)數(shù)
int num[5] = { 1,2,3,4,5 };
int a = sizeof(num);
int b = sizeof(num[0]);
int sum = sizeof(num) / sizeof(num[0]);
stoi( )函數(shù)
Ⅰ.在頭文件#include<string>中
Ⅱ.其作用將數(shù)字字符串轉(zhuǎn)化為int輸出(可自動(dòng)去除前導(dǎo)0)
Ⅲ.存在范圍限制(int)