c++与c的区别
//一:
/*申明命名空间
- 1.std::cout << “hello world” << std::endl;
- 2.using namespace std
- 3.using std::cout (::域运算符)
*/
//二:输入输出
/*1.输入运算符:cin >>
- 2.输出自动识别格式:cout<<
*/
//三:数据类型
/*1.新增布尔类型 bool
- 2.ture 、false
- 3.控制台输出为1或0:ture-1
- 4.转化为字母输出:
- bool t=false;
cout<<boolalpha << t; boolalpha指定输出为字母,不自动转化为1或0
cout << t;
*/
//四:结构体
/*1.
- struct Test
{
int id;
char name;
void show()
{
cout << “Test结构体” << endl;
} //zsl.show();
};
Test zsl;//C++写法,c语言需要typedef
//struct Test zsl;//c语言写法,c++也可以
*/
//五:数据类型转换
/*1.int num = 1314;
float flag = static_cast(num);
- 2.const_cast<int&>(t) //去掉常量属性
*/
//六:变量的引用
/*1.a > b ? a : b;//c语言中是一个定值,c++中是一个引用,可以赋值
- 2.int a = 5;
int &b = a;//给a取了个b的名字,表示同一块内存空间
//有一个改变,则都改变,例如:
printf("%d %d", a,b);
a = 6;
printf("%d %d", a, b);
*/
//七:动态内存分配
/*1.//c语言
int *a = (int *)malloc(sizeof(int) * 10);
for (int i = 0; i < 10; i++)
{
a[i] = i;
printf("%d ", a[i]);
}
free(a);//释放内存
cout << endl;
//c++
int* cpp = new int[10];//申请时初始化: int* cpp = new int[10]{0,1,2,3,4,5}
for (int i = 0; i < 10; i++)
{
cpp[i] = 2*i;
printf("%d ", cpp[i]);
}
delete[] cpp;//释放内存
*/
//八:函数
/*1.//默认参数,也叫缺省参数。参数只能自右向左开始指定,可以有多个
int add1(int a, int b = 0)
{
return a + b;
}
int main()
{
int a = 4;
cout << add1(a) << endl;
return 0;
}
- 2.函数的重载
*/