您的位置:首页 > 运维架构 > Linux

linux兴趣小组暑假第五次讲座总结

2016-07-30 11:40 344 查看

系统编程杂谈

printf()变参函数的实现

int my_printf(const char *fmt, ...)
{
va_list args;

va_start(args, fmt);
int i;
int j=1;
char ch;
while(ch=*fmt++) {
if(ch='%') {
ch=*fmt++;
switch(ch) {
case 'c':
char ch1=va_arg(args,char);
putchar(ch1);
break;
case 's':
char *ch2=va_arg(args,char*);
puts(ch2);
break;
}
} else{
putchar(ch);
}
}
return 0;
}


makefile

拿我sh.c来举例

因为要链接动态库,所以要麻烦一些

cc = gcc //编译器

OBJ = ksh //生成的目标文件

all:

$(cc) -c ./*.c  //执行并输出这些

$(cc) -o $(OBJ) ./*.o /lib64/libreadline.so.6 -I -lreadlin -lncurses -g

rm *.o  //删除中间文件

clean:

rm *.o
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: