如何做ps4游戏视频网站,推广联盟平台,什么是网站交互性,深圳香蜜湖街道香岭社区1. C是C的增强 1.1 C是静态类型的语言#xff0c;具有严格的数据类型检查 1.1.1 c 因为const修饰的变量不允许修改#xff0c;但是只给了警告#xff0c;不严谨 const int a10;a20; //报错int *pa;*p20;//a的值#xff1f;
test1.c:6:9: warning: initialization dis… 1. C是C的增强 1.1 C是静态类型的语言具有严格的数据类型检查 1.1.1 c 因为const修饰的变量不允许修改但是只给了警告不严谨 const int a10;a20; //报错int *pa;*p20;//a的值
test1.c:6:9: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]6 | int *pa;| ^1.1.2 c c直接报错 const int a10;a20; //报错int *pa;*p20;
est2.cpp: In function ‘int main()’:
test2.cpp:6:9: error: invalid conversion from ‘const int*’ to ‘int*’ [-fpermissive]6 | int *pa;| ^~| || const int*2. C结构大致解读 2.1 iostream库文件无后缀 C如果包含的头文件不加.h表示是属于C标准库里的文件 加.h,表示是用户自己写的头文件 iostream是用双引号扩起来编译器首先是在当前工程文件下寻找该库文件然后再从标准库中找该文件 iostream是用括号括起来编译器首先是从标准库中找该文件再从当前工程找该文件 3. 新增变量引用 3.1 引用符号 在C语言表示取地址在C里是另外一层表示引用 引用是给已经存在的变量取一个别名称为“引用”别名和原来的变量名是同一个 3.2 引用的声明 数据类型内置的数据类型或自定义的类类型 别名 已经存在的变量名 3.3 例 share1中 test1.cpp #include iostream
using namespace std;int main()
{int a 10;int b a;coutaaendl;coutbbendl;couta的地址aendl;coutb的地址bendl;couthello worldendl;return 0;
}3.4 常见的面试题: 3.4.1 引用和指针的区别? (1)编译器会为指针变量申请另外的空间但是编译器不会为引用类型的变量额外开辟空间 (2)指针变量存在时可以不用进行初始化但引用变量一旦存在必须进行初始化工作 (3)指针变可以指向多个已经存在的变量引用变是对应一个已经存在的变量(一对应) 3.5 通过函数交换两个变量的值 share1中 test3.cpp #includeiostream
using namespace std;void swap(int a,int b){int tmp a;a b;b tmp;}
int main()
{int a 10;int b 20;swap(a,b);coutaa bbendl;return 0;
}4. 函数重载 新增了函数重载以及运算符重载 4.1 函数重载 概念函数名相同函数的参数个数、顺序、类型不同就称为“函数重载” 注意点 函数重载是与函数的返回值无关即返回值不同不构成重载 例如
C语言void functionint a , char b{}void functionint a{} //报错标识符重名的错误
Cvoid functionint a , char b{}void functionint a{} //正确4.2 练习 test4.cpp #includeiostream
using namespace std;//函数重载void swap(int a,int b){int tmp a;a b;b tmp;
}//参数不同包括类型不同可以重载
void swap(){couthelloendl;}//返回值类型不同不能重载
// int swap(int a,int b){
// couthelloendl;// }int main()
{int a 10;int b 20;swap(a,b);coutaa bbendl;swap();return 0;
}