1-2 你的第一个程序
⏱ 本节预计用时:30分钟
本节意义:这一节你将做一件里程碑式的事情,跑通自己人生的第一个程序!
本节目标:跑通 hello.c,在终端里看到自己的名字;理解“写代码→让 AI 编译→运行”这套流程是咋转起来的。
1 跑通你的第一个程序
先跟着图片操作,新建一个名字为hello.c的文件。
ok,你现在有了一个叫 hello.c 的空文件,把这段代码照着敲进去。
#include <stdio.h>
int main() {
printf("Hello, World!\n"); // 在终端里输出Hello, World!并换行,\n是换行的意思。
return 0;
}
ok,现在有一个新的问题,电脑作为一坨电路,它根本不认识你敲的英文,它只能认识0101的二进制码。需要有一个翻译官,来帮你把你敲的东西变成它能看懂的东西。
能将英语翻译成二进制码的翻译官,我们管他叫编译器。
现在,让ai帮我们下载c语言的编译器(可能要等很久),翻译(学名叫编译)这段代码,然后运行。
ai下东西一般会从github下,国内网络可能登不进去。我们在这里明确地给它说明自己是国内的网络,不要从github下。如果你的ai笨笨的,跑了超过半小时还是没弄好,你可以对着书末附录1的方法手动操作。
看到要运行命令就点运行。
下好了,也弹出了运行输出。下面,让我们手动运行,切实的感受这个程序是可以跑的。
恭喜你,你成功跑通了自己的第一个程序!
如果你在文件夹里双击hello.exe文件,你会发现打开后会迅速关掉,这是因为程序执行完了,程序所在的进程就被系统杀了。我会在之后要写的计算机系统系列里进一步讲,到时候你会解决几乎所有现在的困惑,现在先别管这些是啥意思,看不懂先跳过,在终端里跑出和我一样的现象,往后看。
2 把 "Hello World" 改成你的名字
现在,做两件事。
第一件,修改你的终端编码为utf-8。
编码指的是代码和电脑能看懂的二进制数的对应关系,比如张三,翻译成电脑语言是0101,张三 = 0101的这套规则就是编码。
你可能说,哦,我知道了,那为啥要改编码?因为既然是规则,肯定要用最通用的,全中国人都说中文,张三说火星文,谁知道他说的啥意思。全球开发软件都在用utf-8这套规则,编辑器里保存文件的格式也是utf-8,终端用的编码却是GBK,所以我们要改他。
还有一个我们必须改他的理由,它和utf-8的中文编码不一样。就是说0101在utf-8里是张三,但是在gbk里是&#,你在代码里写“嗨,终端,给我打印张三”,它打印出来却变成了&#。这种由于编码不匹配,输出的不知名字符,我们管他叫乱码。
好了,开始改吧:
第二件,在你的代码里,找到这一行:
printf("Hello, World!\n");
把引号里面的 Hello, World! 改成你的名字。比如你叫小明,就改成:
printf("我叫小明\n");
改完之后,你现在的代码应该长这样(拿"小明"举例):
#include <stdio.h>
int main() {
printf("我叫小明\n");
return 0;
}
再给ai说让编译运行它。
你可以看到输出变了。
这就是程序的本质,输入改变输出。你手机上的微信、你电脑上的浏览器、你玩的游戏——它们最底层、最核心的逻辑,和你现在写的这行 printf 本质上没有任何区别。
3 C语言模板
由上面的例子我们可知,printf是把文字输出到控制台上的意思。
其他几句的意思先不用管,等到了后边的章节,我会给大家讲明白。
现在把它们当c语言的万能模板记住,就可以了。
#include <stdio.h>
int main() {
// 你的代码写在这里
return 0;
}
给大家讲明白。
现在把它们当c语言的万能模板记住,就可以了。
#include <stdio.h>
int main() {
// 你的代码写在这里
return 0;
}