结构体
结构体 结构体的声明 常规声明 1234struct tag { member-list; }variable-list; 123456789101112131415161718struct Stu { //结构体的成员列表 char name[20]; char tele[12]; char sex[10]; int age; }s4,s5,s6; //分号不能省略 struct Stu s3;//全局变量 int main(void) { struct Stu s1; struct Stu s2; return 0; } s1,s2是局部变量,s4,s5,s6是全局变量 特殊的声明 1234567891011121314//匿名结构体类型struct { int a; char b; float c; }x; struct { int a; char b; float c;...
操作符
原码、反码、补码 存储到内存中的是补码 正整数原码反码补码都相同 原码 反码:符号位不变,其他位按位取反 补码:反码+1 移位操作符 移位操作符移的是补码 32位 10000000000000000000000000010000 右移操作符: 计算机一般用的是算数右移 1.算术右移:右边丢弃,左边补符号位,右移一位有除2效果 10000000000000000000000000001000 2.逻辑右移:右边丢弃,左边补0 00000000000000000000000000001000 左移操作符:左边丢弃,右边补0 位操作符 注意:补码运算 按位与& 0&0=0 0&1=0 1&1=1 00101101 10110110 &00100100 按位或 | 0|0=0 0|1=1 1|1=1 00101101 10110110 |10111111 按位异或^ 相同为0,相异为1 0^0=0 0^1=1 1^1=0 00101101 10110110 ^...
动态内存
局部变量 — 栈区 全局变量 — 静态区 栈区 — 局部变量,函数的形参 堆区 — 动态内存分配 静态区 — 全局变量,静态变量(static) 内存的使用方式: 新建一个变量 int a = 1;//局部变量,栈区 int global_a = 1;//全局变量,静态区 新建一个数组 int a[10];//与变量的内存相同,只是数组申请一块连续内存 12345678910111213struct S { char name[20]; int age; }; int main(void) { struct S arr[50];//50个struct S类型的数据 //30 --- 浪费 //60 --- 不够 return 0; } C语言可以创建变长数组 —...
VSCode配置避坑指南
前言 以下是vscode的简单配置步骤,主要围绕.vscode文件夹的配置展开,由于网上对于VSCode的安装和MinGW的下载和环境变量的配置教程较多也很简单,本文不再赘述。 第一部分是.vscode文件夹的基础配置,使用此配置文件可以简单编译,运行和调试单文件和多文件的C语言程序,不能实现其他复杂任务 第二部分是.vscode文件夹的进阶配置,增加了C++的支持以及x86,x64以及debug和release模式的切换以及其他一些小功能,如有错误,欢迎指正:) 这是一些VSCode的快捷键以及配置文件时能用到的一些知识 Ctrl+Shift+P — 打开命令面板 Ctrl+Shift+B — 开始执行编译任务 调试相关快捷键: F5 — 启动调试/全速运行到下一个断点 Shift+F5 — 停止 Ctrl+Shift+F5 — 重新运行 F10 — 单步跳过 F11 — 单步进入 Shift+F11 — 单步跳出 ${workspaceFolder} — 在VSCode中打开文件夹的绝对路径 ${workspaceRoot} —...