[习题1]编译($ make ex1) 运行($ ./ex1)

使用教材

《“笨办法” 学C语言(Learn C The Hard Way)》
https://www.jianshu.com/p/b0631208a794

ex1.c

#include 

/* This is a comment */
int main(int argc, char *argv[])
{
    int distance = 100;
    
    // this is also a comment
    printf("You are %d miles away.\n",distance);
    
    return 0;
}
  • int argc 表示命令行参数的个数;
  • char* argv[]char * 类型的数组 存储命令行参数的内容;

运行结果

make ex1
./ex1
习题1 运行结果

make ex1

  • 告诉make去寻找ex1.c文件;
  • 会运行编译器对该文件进行构建;
  • 将生成结果放到一个名为ex1的文件中去(注意这里是没有任何后缀名的)

./ex1

  • ./ 表示当前目录;
  • 使用 ./ex1 来运行程序,输出结果;

附加任务

  • 运行 man 3 printf ,阅读一下关于这个函数以及别的函数的内容.
  • 打开命令行,输入man 3 printf
运行 man 3 printf
man 3 printf
  • man是Linux下的帮助指令,可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息

参数

  • 数字:指定从 哪本 man手册 中搜索帮助;
  • 关键字:指定要搜索帮助的关键字;
    http://man.linuxde.net/man
  • man 3 printf:查看函数库中的printf函数的帮助

http://blog.chinaunix.net/uid-7547035-id-60062.html


ex1 视频笔记

练习的要求

  • 编程最大的一个问题就是弄明白自己写的东西对不对,并能找出问题的原因;
  • 记住一定要自己努力试过,也许可以设一个时限,如果花了一个小时还没弄明白,那就作弊一次(看仓库的代码);
  • 训练自己对细节的注意程度,每个人都需要很多训练;

如何敲代码?

  • 视频演示的输入代码方法是,看一眼->记住->敲代码 这样来回循环;
同时打开2个文件    myex1.c 以及 gitex1.c
sublime Text 或者 notepad++ 
都可以使用 快捷键 ctrl+PageDown 在两个文件的窗口来回切换
  • 或者看书,从书上看代码->努力记住->敲代码
这里,记住的单元,可以是`int argc`,
也可以是`/*this is a comment*/` 这样一整条注释,
`int distance = 100;`这样一整条语句,
我认为作者的本意就是要理解你要知道自己在敲一个整型变量,
而不是字符**i**,**n**,**t**之类;

如何检验敲入的代码?

  • 使用命令行工具 diff,如果代码有不同就会显示出来,如果一样就什么输出也没有。
diff myex1.c gitex1.c

重新make

  • 先删掉旧的生成文件 rm myex1
  • 再重新make一份 make myex1

调试 lldb gdb

  • 进入调试模式 lldb myex1
run

感想

  • 讲解了附加任务
  • 视频信息量很大,很多书上的没有的东西;
  • 作者语速很快,完全不需要倍速播放了,暂停好多次看字幕...

你可能感兴趣的:([习题1]编译($ make ex1) 运行($ ./ex1))