首页
社区
课程
招聘
[旧帖] [求助]一个C函数参数的问题~~ 0.00雪花
发表于: 2009-8-9 01:23 3193

[旧帖] [求助]一个C函数参数的问题~~ 0.00雪花

2009-8-9 01:23
3193
最近在和别人交流的时候发现有1个和C有关的问题。(由此可知交流还是很有必要的)

程序
# include <stdio.h>

int flag = 1 ; //设置旗标

float main (float n)
{
        if (flag == 1)
        {

                flag = 0 ; //旗标置0

                printf ("%f\n", main (100)) ; //调用main函数本身输出结果

        }

        return n + 1 ;
}

这个程序我想了半天才构造好的。

问题:
以前看书,好象说main函数的参数是(int argc, char *argv[]),这里为什么能设置成float呢??而且参数个数也不对啊。

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 61
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
编译器规定 入口函数是main(),或者WindMain吧。这个函数可以编译通过,但是不能读取环境变量了。
2009-8-9 08:12
0
雪    币: 157
活跃值: (10)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
首先感谢楼上的回答。
另外我再提出一些看法:
首先,此函数的n值传递是在printf ("%f\n", main (100)) ;这句
      我本意并没有要求它能够以带参数的方式运行。
其次,这个函数能够很好的运行起来,输出101.000000。(不信可以试试哦~,我用的VC6)
最后,这个main的参数,和main是程序入口,好象没什么关系。
2009-8-9 10:43
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
在DEV-C++中编译不过
2009-8-9 11:15
0
雪    币: 157
活跃值: (10)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
5
是报什么错误呢?~
2009-8-9 11:19
0
雪    币: 110
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
进来学习中。。
2009-9-9 12:23
0
雪    币: 251
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
采用cdel调用的c函数在链接时没有参数信息,更没有返回值信息
堆栈由调用方平衡,所以没什么大问题
2009-9-9 13:35
0
游客
登录 | 注册 方可回帖
返回
//