C语言入门
编写 C 语言程序工具
- 记事本(开发效率低)
- Vim(初学者入门门槛高)
- VSCode(不喜欢)
- eclipse(不喜欢)
- CLion(深爱, 但收费)
- Xcode(逼格高, 但得有苹果电脑)
- Qt Creator(开源免费,跨平台安装和运行)
注意:学习 C 语言,选择任意一款你喜欢的工具即可。
什么是 Qt Creator ?
- Qt Creator 是一款新的轻量级集成开发环境(IDE)。它能够跨平台运行,支持的系统包括 Windows、Linux(32 位及 64 位)以及 Mac OS X
- Qt Creator 的设计目标是使开发人员能够利用 Qt 这个应用程序框架更加快速及轻易的完成开发任务
- 开源免费, 简单易用, 能够满足学习需求
集成开发环境(IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。
Qt Creator 安装
Qt Creator 官网:http://download.qt.io/
-
切记囫囵 吞枣, 不要纠结里面的东西都是什么含义, 初学者安装成功就是一种成功
-
下载 Qt Creator 离线安装包:
-
版本和代码编辑器任意选择都可以
-
qt 软件下载链接:https://pan.baidu.com/s/1gx0hNDBJkA2gx5wF1Jx34w 提取码:0fg9
-
以管理身份运行离线安装包
-
下一步,下一步,下一步,等待 ing...
-
注意安装路径中最好不要出现中文
-
对于初学者而言全选是最简单的方式(重点!!!)
-
配置 Qt Creator 开发环境变量
你的安装路径\5.11.0\mingw53_32\bin 你的安装路径\Tools\mingw530_32\bin
- 启动安装好的 Qt Creator
- 非全选安装到此为止, 全选安装继续往下看
出现这个错误, 忽略这个错误即可
- 等待安装完毕之后解决刚才的错误
找到安装目录下的 strawberry.msi,双击运行
Qt Creator 快捷键
什么是环境变量?
- 打开我们添加环境变量的两个目录, 不难发现里面大部分都是.exe 的可执行程序
- 如果我们不配置环境变量, 那么每次我们想要使用这些"可执行程序"都必须"先找到这些应用程序对应的文件夹"才能使用
- 为了方便我们在电脑上"任何地方"都能够使用这些"可执行程序", 那么我们就必须添加环境变量, 因为 Windows 执行某个程序的时候, 会先到"环境变量中 Path 指定的路径中"去查找
为什么要配置系统变量,不配置用户变量
- 用户变量只针对使用这台计算机指定用户
- 一个计算机可以设置多个用户, 不同的用户用不同的用户名和密码
- 当给计算机设置了多个用户的时候,启动计算机的时候就会让你选择哪个用户登录
- 系统变量针对使用这台计算机的所有用户
- 也就是说设置了系统变量, 无论哪个用户登录这台计算机都可以使用你配置 好的工具
如何创建 C 语言程序
- 这个世界上, 几乎所有程序员入门的第一段代码都是 Hello World.
- 原因是当年 C 语言的作者 Dennis Ritchie(丹尼斯 里奇)在他的名著
The C Programming Language
中第一次引入, 传为后世经典, 其它语言亦争相效仿, 以示敬意
如何创建 C 语言文件
C 语言程序组成
-
手机有很多功能, "开机","关机","打电话","发短信","拍照"等等
-
手机中的每一个功能就相当于 C 语言程序中的一个程序段(函数)
-
众多功能中总有一个会被先执行,不可能多个功能一起执行
-
想使用手机必须先执行手机的开机功能
-
所以 C 语言程序也一样,由众多功能、众多程序段组成, 众多 C 语言程序段中总有一个会被先执行, 这个先执行的程序段我们称之为"主函数"
-
一个 C 语言程序由多个"函数"构成,每个函数有自己的功能
-
一个程序有且只有一个主函数
-
如果一个程序没有主函数,则这个程序不具备运行能力
-
程序运行时系统会自动调用主函数,而其它函数需要开发者手动调用
-
主函数有固定书写的格式和范写
函数定义格式
- 主函数定义的格式:
- int 代表函数执行之后会返回一个整数类型的值
- main 代表这个函数的名字叫做 main
- () 代表这是一个函数
- 代表这个程序段的范围
- return 0; 代表函数执行完之后返回整数 0
int main() {
// insert code here...
return 0;
}
- 其它函数定义的格式
- int 代表函数执行之后会返回一个整数类型的值
- call 代表这个函数的名字叫做 call
- () 代表这是一个函数
- 代表这个程序段的范围
- return 0; 代表函数执行完之后返回整数 0
int call() {
return 0;
}
如何执行定义好的函数
- 主函数(main)会由系统自动调用, 但其它函数不会, 所以想要执行其它函数就必须在 main 函数中手动调用
- call 代表找到名称叫做 call 的某个东西
- () 代表要找到的名称叫 call 的某个东西是一个函数
- ; 代表调用函数的语句已经编写完成
- 所以 call();代表找到 call 函数, 并执行 call 函数
int main() {
call();
return 0;
}
- 如何往屏幕上输出内容
- 输出内容是一个比较复杂的操作, 所以系统提前定义好了一个专门用于输出内容的函数叫做 printf 函数,我们只需要执行系统定义好的 printf 函数就可以往屏幕上输出内容
- 但凡需要执行一个函数, 都是通过函数名称+圆括号的形式来执行
- 如下代码的含义是: 当程序运行时系统会自动执行 main 函数, 在系统自动执行 main 函数时我们手动执行了 call 函数和 printf 函数
- 经过对代码的观察, 我们发现两个问题
- 并没有告诉 printf 函数,我们要往屏幕上输出什么内容
- 找不到 printf 函数的实现代码
int call(){
return 0;
}
int main(){
call();
printf();
return 0;
}
- 如何告诉 printf 函数要输出的内容
- 将要输出的内容编写到 printf 函数后面的圆括号中即可
- 注意: 圆括号中编写的内容必须用双引号引起来
printf("hello world\n");
- 如何找到 printf 函数的实现代码
- 由于 printf 函数是系统实现的函数, 所以想要使用 printf 函数必须在使用之前告诉系统去哪里可以找到 printf 函数的实现代码
\#include <stdio.h>
就是告诉系统可以去 stdio 这个文件中查找 printf 函数的声明和实现
#include <stdio.h>
int call(){
return 0;
}
int main(){
call();
printf("hello world\n");
return 0;
}