C语言与C++

1.C++语法检查增强
c语言代码:
int a =10;
int a;//没有赋值,当做声明

int main()
{
printf(“a:%d\n”,a);
return EXIT_SUCCESS;
}
此代码在c++下编译失败,在c下编译通过。

2.c++中所有的变量和函数都必须有类型

3.更严格的类型转换

二.c++对结构体的增强
1.c中定义结构体变量需要加上struct关键字,c++不需要
2.c中的结构体只能定义成员变量,不能定义成员函数。c++即可以定义成员变量,也可以定义成员函数

三.c++新增bool类型

四.三目运算符功能增强 a>b?a:b
1.c语言三目运算符表达式返回值为数据值,为右值,不能赋值
2.c++语言三目运算表达式返回值为变量本身(引用),为左值,可以赋值
能被赋值的就是左值,不能被赋值的就是右值

五 c++中const
c语言的const修饰全局变量 默认是(外部链接的)
外部链接:其他源文件可用
const修饰全局变量Num变量名只读,内存空间在文字常量区(只读)、不能通过Num的地址修改空间内容
2.const修饰局部变量data 变量名只读 内存空间栈区(可读可写),可以通过data地址 间接的修改空间内容

c++中的const
1.const int data=10;//data先放入符号表
2.如果对data取地址 系统才会给data开辟空间
3 const int a= b;//b是变量名,系统直接给a开辟空间 而不放入符号表
4 const 修饰自定义数据 系统为自定义数据开辟空间

猜你喜欢

转载自blog.csdn.net/Flywithdawn/article/details/104910386