video2
- scanf;strcpy;strlen;strcat等函数是不安全的,在vscode内会自动提供一个更安全的函数如scanf_s,但是这样就扼杀了程序的兼容性,所以我们一般不采取这样方式来解决,而是在第一排声明,加入#define _CRT_SECURE_NO_WARNINGS 1这样一句话,使其失效,可以在vs的vsprojectitems文件夹中找到newc++file.cpp文件,然后用nodepad++更改内容,则可以让每个新建文件的开头带上这一句话。
F:\vs2022\Visual Studio IDE\Common7\IDE\VC\VCProjectItems
- const修饰的常变量,即不能在被修改,常变量:具有常属性的变量。
const int n=10;//此时n是变量,但是又有常属性,所以我们说n是常变量。
#define定义的标识符常量,#define Max 10 说明Max此时是常量,值是10。
枚举常量:一一列举,关键字enum;
#include <stdio>
enum Sex{
MALE,
FEMALE,
SECRET
};
int main(){
//enum Sex s=MALE;
printf("%d%d",MALE);//0
printf("%d%d",FEMALE);//1
printf("%d%d",SECRET);//2
return 0;
}
- 字符串,不管多长都会有一个隐藏在字符串末尾的 ’/0‘,是结束标志,它的值是0,也是转义字符,不作为字符串内容。char arr1[] = "abc"; char arr2[] = {'a' , 'b' , 'c'};第一个字符串长度为3,第二个字符串长度为随机值。
strlen()是计算字符串长度的一个函数。
- 转义字符
\? ?(防止在书写多个?时被解析为三字母词)
\'
\\ \让\是\防止成为转义字符内的\
\ddd 表示1-3个八进制数字,\32是两个8进制数字
\xdd 表示两个16进制数字 - c语言的注释风格不支持嵌套(/* */);
- 函数有自定义函数和库函数。
- 左移右移,被移位本身的数据不改变,和b=a+1性质一样。
- 按位与 & 按位或 | 按位异或 ^
int a=3;
int b=5;
int c=a&b;
先把a转换为二进制为011,b转换为二进制为101,按位进行与操作,相同为一,不同为零,则c的值为1。
- 单目操作符,双目操作符,三目操作符,在操作符旁边有两个操作数,则称为双目操作符。在c语言中表示真假,0表示假,而!进行取反,非零为真。
int a=10;
printf("%d\n",a);
printf("%d\n",!a);
//得出的值为10 0;
int a=0;
printf("%d\n",a);
printf("%d\n",!a);
//得出的值为0 1;
- sizeof计算的是变量或者是类型的字节长度。也可以计算数组的大小,计算数组的个数=总元素大小/单个元素的大小