为了账号安全,请及时绑定邮箱和手机立即绑定

Linux C语言编程基本原理与实践

难度初级
时长 2小时 0分
学习人数
综合评分9.60
349人评价 查看评价
9.8 内容实用
9.6 简洁易懂
9.4 逻辑清晰
写的一模一样 为什么我报了warning
.o文件是机器码。。。真是醉
tab 默认应该为6个空格。win下可能是4个
gcc -c max.o min.o hello.c会报错
linker input file unused because linking not done
如果在hello.c中include了max.c,那么在编译时只编译hello.c就好,要不然就会报错。
argument counter 和 argument vector
记一个bug: 关于函数重复定义
[gee@localhost c]$ gcc hello.c max.c -o main.out
/tmp/ccsEwEL6.o: In function `max':
max.c:(.text+0x0): multiple definition of `max'

直接编译hello.c 不加max.c就没有问题了. 两个文件一直编译就有问题: 重复定义了max函数.
错误的地方:gcc hello.c max.c (gcc会尝试将两个文件合到一起,重复的第一次 hello.c中#include "max.c"的一次,和max.c文件中的一次.
为什么视频中没有引入include max.c文件却能执行? 不懂不懂...

已采纳回答 / mmorpglx
you can drink anything you want after your work....

已采纳回答 / 才下眉头却上我心头
printf("j !=0 \n");是fprintf(stderr,"j !=0 \n");的一个封装,功能是一样的

最新回答 / 小雾3378873
gcc 的时候把max.c去掉,你在hello.c中应该已经声明了它,如果还没有解决,最好把max.c 和 hello.c代码上传上来。

已采纳回答 / rubens
系统默认的,你要想hello.out需要在后面加上 -o hello.out
课程须知
本课程为C语言中级课程 学习本课程需要了解C语言以下基本语法:变量、常量、顺序、循环、分支、函数等。
老师告诉你能学到什么?
如何在真正的商业环境(Linux)下编写C语言程序 如何编译一个项目以及makefile如何编写 C语言真正的本领(制作小工具) 多个c语言小工具如何构成强大的软件系统

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消