C++与java的不同点
2020-05-08 本文已影响0人
JuliusL
常量
#define Day 7 //宏常量
const int month = 12 //无法修改的变量
字符串
char ch = 'a';
char str[] = "hehehehe";//c的字符串方式
string str2="hello";//c++的字符串方式
cout <<(int)ch << endl; //输出char的ASCII码
cout <<str << endl;
cout << str2 << endl;
布尔
c++中0是false,1是true
bool flag = true //1=true,0=false
三目运算符
在c++中三木运算符返回的是变量,可以继续赋值
(a > b ? a : b) = 100
switch
c++的switch只能是整形或者字符型,不可以是一个区间
goto语句
作用:可以无条件的跳转语句
语法:goto 标记;
解释:如果标记的名称存在,执行到goto语句时,会跳转到标记的位置
实际开发不推荐用,流程会混乱
goto FLAG;
// code
FLAG:
一维数组
- 数组是放在一块连续的内存空间中的
- 如果在初始化数据时,数组中没有全部填完,会用0来填补剩余。
int arr[5];
int arr2[5] = { 10,20,30,40,50 };
int arr3[] = { 10,20,30,40,50 };
一维数组名称用途
1,可以统计整个数组在内存中的长度
2,可以获取数组在内存中的首地址
3,数组名是常量,不可再赋值
4,获取元素地址要用取址符号:&
sizeof(arr) //获取数组的内存空间
sizeof(arr[0]) //单个元素的内存空间
//两个一除,得到数组的长度
cout << "数组的首地址(16进制):" << arr << endl;
cout << "数组的首地址(10进制):" << (int)arr << endl;
cout << "数组第一个元素地址:" << (int)&arr[0] << endl;
cout << "数组长度:" << sizeof(arr)/sizeof(arr[0]) -1 << endl;
二维数组
👇4种定义方式,推荐第二种
int arr[2][3];
int arr2[2][3] = {
{1,2,3},
{4,5,6}
}; //行列分开
int arr3[2,3] = {1,2,3,4,5,6};//每3个为一行
int arr4[][3] = {1,2,3,4,5,6};//行数可以计算出来,所以可以省略
二维数组名称用途
sizeof(arr) //获取二维数组的内存空间
sizeof(arr[0]) //第一行占用内存
sizeof(arr[0][1]) //第一个元素占用内存
sizeof(arr)/sizeof(arr[0]) //行数
sizeof(arr[0])/sizeof(arr[0][0]) //列数
函数
当做值传递的时候,函数的形参发生改变,并不会影响实参
1,函数声明
- 提前告诉编译器函数存在,可以利用函数的声明
//当max在main的下面,没有这一行的话,会报错
int max(int x,int b);
int main(){
max(1,2)
}
//定义
int max(int a,int b){
return a>b?a:b;
}
2,函数的分文件编写
作用:让代码结构更加清晰
函数分文件编写一般有四个步骤
1,创建后缀名为h的头文件
2,创建后缀名为.cpp的源文件
3,在头文件中写函数的声明
4,在源文件中写函数的定义