重新认识C语言

重新认识Linux C语言

1.函数的隐形声明(implicit Declaration):main函数使用没有先声明的函数的时候,编译器就会认为在使用此个函数的           时候隐式声明了一个返回值是int的函数声明比如 int fun(void);这样函数的参数和返回值就确定下来了,编译             器根据这些信息为函数调用生成相应的指令。然后编译器就会继续往下看,当看到真实的函数void fun(void)的           时候和之前的隐形声明的函数的返回值不同,就会有警告。warning:implicit declaration of function "fun"

2.为什么编译器在处理函数时需要知道函数的原型?因为只有知道了函数的原型之后才可以知道函数的返回值和参数来           生成相应的指令。此时隐形的声明是靠不住的,因为它是根据函数调用代码推测的。编译器是不知道去哪里找函             数原型的,所以要先声明,或者extern其他文件的函数。

3.include"stack.h"和include<stack.h>的区别。引号:gcc首先查找包含这个头文件的当前目录,然后查找-I指定的目                 录,最后是查找系统的头文件目录。尖括号:gcc首先查找-I指定的目录,最后是查找系统的头文件目录。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值