C语言学习第二节-第一个c语言程序

2020-03-31 06:46 阅读 200 次 评论 0 条

个人对c语言的认知与建议

我是很早就开始学c语言了,应该是不到12岁,到现在其实也没什么成就。基本能看懂别人写的代码,但是自己写不出来像样的作品。我还能记起一个理论,是我看过的一篇师范毕业生论文中的一段(也没必要背原文,记得大概是这个意思):

很多人第一个c语言程序都是在visual studio,dev c,turbo c里,写了一个hello world就编译跑起来了,但是过一周两周一月两月,基本还是只会hello world,因为他们不懂编译器。不懂编译器没关系,不懂命令没关系,既然是从0开始,那就从0开始,当然不是从0101开始,还是要基于用户界面,找一个没有行号没有补全没有高亮的编辑器,手动装上gcc,逐渐了解怎么把想法告诉计算机,为什么要这样告诉计算机。

之所以记得清楚是因为有很多共同的见解,总结来说就是全靠手动,就是手写全部逻辑代码(不包括标准库),手动编译执行。当然全靠手动是对于初写c语言程序本身来说的,实现需求的思路当然是动脑想出来的。对于有些定式初学时无法理解就不要理解,越底层的当然就越难,逐渐理解。

第一个c语言程序

#include <stdio.h>
int main()
{
  printf("When you see this in terminal, you succeed\n");
  return 0;
}

第一行引用标准库文件在上一篇文章中就说过了,必须要做的。

第二行主函数入口上一篇中也见过,标准的写法,没什么好说。

第三行的花括号开始{可以写到main()后面,但是另写一行有什么好处,可以在超纲交流中探讨。

第四行printf是输出语句,语法是printf("example");  printf后跟括号(),输出的内容要用引号"",这里的所有符号一律要用半角的英文符号。

第五行return 0;是函数的返回值,int类型就一定要写。

第六行闭合括号,没什么好说。

 

编译代码

  1. 打开终端,定位到源文件目录
    cd desktop/c-code
  2. 查看文件夹内容
    ls
  3. 编译源文件
    gcc first-program.c
  4. [无警告/报错]
  5. 查看文件夹内容(多了一个a.out)
    ls
  6. 运行a.out
    ./a.out
a.out

第三步输了gcc命令后,经过gcc编译发现没有问题,第五步再次查看源文件所在目录发现多出了一个a.out的文件,那么这个a.out就是编译生成的二进制文件,计算机只能看得懂这个,而我们看不懂。a.out的来源一言难尽,也不是本文的主题。那么多个源文件都要编译的话,默认都生成a.out,就会覆盖之前的编译。那么怎样生成自定义的文件名呢,就需要用到gcc的参数。

gcc first-program.c -o first-program.out

加一个 -o 后面跟example.out,就可以自定义编译生成文件的文件名了。那么second-program.c就生成second-program.out。

 

超纲交流:

  1. 花括号另起一行写有什么好处?
  2. 为什么用了int类型的主函数,不写返回值也能编译成功?那么能不能省略不写?

 

上一篇:C语言学习第一节-头文件、主函数、注释

下一篇:C语言学习第三节-数据类型

嘤嘤嘤嘤嘤呜呜呜呜呜叭叭叭叭叭嘿嘿嘿嘿嘿哟哟哟哟哟 (3 次评分, 平均分: 4.33 out of 5)
Loading...
版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:C语言学习第二节-第一个c语言程序 | 温柔的夜
分类:C语言 标签:

发表评论


表情