C语言内嵌函数声明错误?

刘纪君 发布于 2013/04/20 08:07
阅读 482
收藏 0
#include<stdio.h>

int main(void){

        void print_time(int ,int);
        print_time(2,4);
        return 0;
}
编译报错:
/tmp/ccTlP6CG.o: In function `main':
hello.c:(.text+0x19): undefined reference to `print_time'
collect2: ld 返回 1
不能定义内嵌函数?
加载中
0
redraiment
redraiment
你只是声明了,但没有“定义”。
0
赤月e魔
赤月e魔
c没有内嵌高数吧。
0
刘纪君
刘纪君
看来Linux c 一站式编程上面错了!!81
0
刘纪君
刘纪君
有没有学习C的比较好些的方法,感觉基本知识都了解熟悉了,不知道该怎么往下深入了?
卖切糕大叔
卖切糕大叔
可以看linux那些命令的代码,我原来学的时候老师让试着实现du grep之类的功能。如果楼主能领会所有源码的涵义并且可以做出扩展,那绝对可以说是登堂入室了
Triangle23
Triangle23
可以读一些大牛们写的程序,或者是开源的C的软件。平常遇到一些问题可以考虑用C写出程序,多练练就好了
0
心有未来
心有未来
据我目前了解,C是不支持内嵌函数声明与定义的...
0
OscerSong
OscerSong
函数在哪?
0
kosl90
kosl90
声明没有错,也可以这么声明,不过,如redriment所说,你只声明了一个函数,却没有定义这个函数,你需要让编译器能够找到这个函数的定义。比如在另一个文件中定义这个函数,然后将两个文件生成可执行文件。定义在同一文件就更没问题了。
0
maxos
maxos
根本没有函数定义, 你怎么调用?
0
Gecko
Gecko

C语言允许内嵌声明,但是你想使用声明的函数一定要实现定义,否则会出现错误。

#include<stdio.h>
int main(void){

        void print_time(int ,int);
        int a = 3;
        return 0;
}

上述代码中虽然内嵌了一个函数的声明,但是并没有调用,因此不会提示错误。

返回顶部
顶部