01_visual_studio环境配置及C基本概念入门1. 下载visual studio打开visual studio官网链接visual studio官方网站点击下载visual studio跳转此页面后就已经开始下载了如果未开始下载可以手动点一下提示的位置:下载的是visual studio installer。2. 安装visual studio把上一节下载的visual studio installer双击运行起来勾选使用C的桌面开发:安装位置可以改也可以不改以下是本人对于软件安装目录的一些看法仅供参考无法脱离操作系统而独立存在的文件比如本次安装的VS等建议直接放C盘使用默认路径即可和操作系统共生死。因为这样的话重装系统时就可以快速把操作系统和软件直接格式化掉如果装在了其他盘尤其是和个人文件放一个盘的话还要手动删除安装目录而安装目录一般都是一堆零碎文件删除速度非常慢。可以独立于操作系统而存在的文件比如个人文件、绿色软件、原神等游戏的安装资源、虚拟机等放其他盘。重装系统的话只需要格式化C盘能独立存在的文件不放C盘就不需要被格式化掉自然也无需备份更省心。选好安装路径之后点击右下角安装等待安装完成即可。安装的visual studio不会自动创建桌面快捷方式可以在搜索框中搜索关键词visual studio即可看到刚刚安装的软件将其拖到桌面即可创建快捷方式。3. 创建最简单的C程序3.1 创建项目打开刚刚安装的visual studio点击创建新项目在项目模板中搜索C选择空项目点击右下角下一步配置新项目项目名称给新项目起个名字支持中文但不建议用中文不建议养成中文编码的习惯位置选择项目和解决方案要放在哪里支持中文但不建议用中文不建议养成中文编码的习惯解决方案名称给解决方案起个名字先可以理解为解决方案是项目的容器一个解决方案里可以包含多个项目。VS以解决方案为单位可以认为使用VS必须要有一个解决方案。后续学习过程中会有所体会。同样不建议使用中文。创建完成是这个界面如果没看到解决方案资源管理器可以在这里把它找出来解决方案资源管理器窗口可以自由拖动个人习惯放到左边此窗口右上角三个按钮中间那个按钮是固定可以将解决方案资源管理器窗口固定住。3.2 新建代码文件右键解决方案中的源文件点击添加点击新建项会弹出以下两种可能的界面点击左下角展开所有模板或者左下角显示紧凑视图可以自由切换两种窗口界面给新建的cpp文件起个名字选择其保存目录点击添加即可。3.3 编写最简单的cpp代码#includeiostream using namespace std; int main() { cout Hello world endl; system(pause); return 0; }3.4 运行程序点击上面的本地Windows调试器按钮即可运行起程序运行结果如下4. C基本概念入门4.1 代码与注释4.1.1 C代码补充说明C程序以main函数作为程序入口所有程序都必须存在main函数关于C的详细语法在学习过程中慢慢体会即可入门阶段无需扣得太细致。4.1.2 注释注释是指代码中存在的一些说明性文字一般用于标记此段代码用意、有何注意事项等。作用方便自己后续回头看这段代码或者在团队协作中方便其他工程师阅读自己写的代码。良好的代码不应当写大量注释只在代码关键且难以理解的位置写简短注释即可。如果一段代码中含有大量注释且都是一些浅显问题那大概率是初级程序员或者AI写的注释一般有两种格式单行注释// 注释内容一般是写在一行代码末尾或者一行代码上面多行注释/*注释内容*/虽然叫多行注释但注释内容未必出现在多行通常出现在一段代码上方对下面大段代码进行详细说明或者就是下面这段代码的文档#includeiostream // 包含基本输入输出头文件 using namespace std; /* 这是main函数是C程序入口 */ int main() { cout Hello world endl; // 输出一行字 system(pause); /* 多行注释出现在一行也是没问题的 */ return 0; }4.2 变量、常量与宏定义4.2.1 变量变量是给一块内存起的名字后续可以使用这个变量读、写这块内存定义变量的语法是数据类型 变量名 初始值;举例#includeiostream using namespace std; int main() { int var 1; // 这里的int是数据类型整型var是变量名1是初始值 cout var var endl; system(pause); return 0; }4.2.2 常量常量的定义方法和变量基本相同只是需要在前面加上const修饰常量是不可更改的数据举例#includeiostream using namespace std; int main() { const int var 1; // 使用const进行修饰此时var就是常量不可被修改 // var 2; // 尝试修改会编译报错 cout var var endl; system(pause); return 0; }4.2.3 宏定义宏定义本质是文本替换这里先简单介绍后续会遇到各种各样复杂的宏定义本人建议非必要不使用宏定义调试难度比较高。有的场景必须使用宏定义则再使用比如打log输出函数名时。举例#includeiostream using namespace std; #define MAX 100 int main() { // 之所以说宏定义本质是文本替换因为下面这句话在编译前的预处理阶段就变成了这个样子 // cout MAX 100 endl; cout MAX MAX endl; // MAX 200; // 同样是不可取的预处理阶段会变成100 200这显然是不可能的 system(pause); return 0; }4.3 关键字与标识符4.3.1 关键字关键字是C语言预先保留的词。C关键字节选如下不全asmdoifreturntypedefautodoubleinlineshorttypeidbooldynamic_castintsignedtypenamebreakelselongsizeofunioncaseenummutablestaticunsignedcatchexplicitnamespacestatic_castusingcharexportnewstructvirtualclassexternoperatorswitchvoidconstfalseprivatetemplatevolatileconst_castfloatprotectedthiswchar_tcontinueforpublicthrowwhiledefaultfriendregistertruedeletegotoreinterpret_casttry4.3.2 标识符标识符是变量、常量、宏定义、函数等的名字C对这些进行命名时需要遵循以下规则标识符不能使用关键字比如int if 1;不可以因为if是C关键字不可以被用作变量名标识符只能由字母、数字、下划线组成且第一个字符不允许是数字只允许是下划线或者字母标识符是大小写敏感的严格区分大小写比如int a 1; int A 2;a和A是两个完全不同、毫无关系的变量比如int if 1;不可以因为if是C关键字不可以被用作变量名标识符只能由字母、数字、下划线组成且第一个字符不允许是数字只允许是下划线或者字母标识符是大小写敏感的严格区分大小写比如int a 1; int A 2;a和A是两个完全不同、毫无关系的变量标识符建议做到见名知意不建议使用拼音不要养成任何中文编码的习惯。