lecture2
lecture2
Compiling
-
为什么在云端上有cs50这个头文件,在本机上没有?
在机器的某处存在~/usr/include/cs50.h,但是在本机上没有 -
代码编译四步骤
preprocessing 将散列包含行的内容转化为其他内容
compiling 将源代码转化为汇编代码
assembling 将汇编代码转化为机器代码
linking 将多个目标文件链接在一起
debuging
- 初始时只使用printf即可解决大部分问题
- ide内置debug
command-line Arguments
#include<cs50.h>
#include<stdio.h>
int main(int argc, string argv[])
{
if (argc == 2)
{
printf("hello, %s\n", argv[1]);
}
else
{
printf("hello, world\n");
}
}
argv[0]:程序名称
之后的1,2,3……是不同的参数
argc:参数的个数
cowsay
What do you want the cow to say?
cowsay hello, world
使用-f参数可以选择不同的动物
cowsay -f duck quack
exit status
ehco $? //查看上一条命令的退出状态(c返回的数字由return决定默认为0)