C++ 入门第一篇 Hello Word
C++基础教程
作者:lanneret 时间:2018-06-23
1、基础语法
< >引用的是编译器的类库路径里面的头文件
" "引用的是你程序目录的相对路径中的头文件
2、命名空间
1 namespace; 2 #include<iostream> 3 using namespace std; 4 namespace A{ 5 void fun(){ 6 cout<<"A"<<endl; 7 } 8 } 9 namespace B{ 10 void fun(){ 11 cout<<"B"<<endl; 12 } 13 namespace C{ 14 struct Tearche{ 15 char name[10]; 16 int age; 17 }; 18 void fun(){ 19 cout<<"C"<<endl; 20 } 21 22 } 23 } 24 int main(){ 25 26 }
3、输出流
#include<iostream> using namespace std; int main(){ cout <<"I love C++ "<<endl; int i=0; cout<<"请输入一个整数:"<<endl; cin>>i; cout<<"输出十进制"<<endl; cout<<dec<<i<<endl; cout<<"输出八进制"<<endl; cout<<otc<<i<<endl; cout<<"输出十六进制"<<endl; cout<<hex<<i<<endl; cout<<"请输入布尔值(0或1):"<<endl; bool bl=false; cin>>bl; cout<<boolalpha<<i<<endl; return 0; }
4、实用性增加
任意位置定义变量
5、函数类型检测增强
定义相同的全局或局部变量
C:相同的变量,可以被执行,指向同一个地址
C++:不允许
6、struct 类型加强
C :struct Teacher teatch;
C++:Teacher teach
7、C++中必须指明函数的类型、变量的类型
void test1(i){cout <<i<<endl;}
test2(i){return i;}
8、 Bool 类型
只有true和false,注意非0即为真,0即为假;
C++语法
if(flag) { ; } else{} bool flag = ture; //flag = 5; //flag = -5; cout<<"flag="<<flag<<endl; bool flag1 = false; cout<<"flag1="<<flag1<<endl;
C语言
if(flag==1){
;
}else{}
实战应用:做标志位
9、三目运算
C语言中返回的是变量的值,放在寄存器中,所以三目运算不能当左值;
C: -----------------------------------------
int a=10,int b=10;
(a>b?a:b)=10;//错误
int fun(){return (a>b?a:b);}//可以
*(a:b?&a:&b)=15;//返回变量地址即变量本身
C++:--------------------------------------------------------
返回变量本身,即在内存取了一个地址,可以当左值;
int a=10,int b=10;
(a>b?a:b)=10;//正确
三目运算实战应用:在确认参数在正确的范围内;
10、综合练习
/*bool、输入输出流、命名空间***/ /**通过用户输入bool,实现输出最大或最小值**/ /***********************************************************/ #include<iostream> using namespace std; //namespace compare1{ int GetMaxorMin(int *arr,int count,isMax){ int temp = arr[0]; for(int i=1;i<count;i++){ if(isMax){ if(temp<arr[i]){ temp = arr[i] } }else{ if(temp>arr[i]){ temp = arr[i] } } } return temp; } //} int mian() { int arr_t[10] = {10,7,5,1,8,4,3,60,20,16}; cout<<"输入1选择最大,输入0选择最小:"<<endl; bool isMax = false; cin>>isMax if(isMax){ cout<<"数组最大值"<<GetMaxorMin(arr_t,10,isMax)<<endl; }else{ cout<<"数组最小值"<<GetMaxorMin(arr_t,10,isMax)<<endl; } return 0; }