回 帖 发 新 帖 刷新版面

主题:[原创]可以用空的main函数吗??

考考你:C++可以支持空的main函数,你相信吗?

#defines SOMETHING
#include<someheader>

void main(void)
{
return;
}

程序的其他部分随意,只要主函数是空的,你有什么方法可以实现吗?
知道的告诉大家!呵呵没人回帖我再公布!

回复列表 (共28个回复)

沙发

怎么没有人理我??答出来的向斑竹要100分,呵呵,
给我100 分,马上就公布答案!呵呵

板凳

#include<iostream.h>
void main(void)
{
    cout<<"Hello World!"<<endl;
    return 'void';
}
//有一警告!但能运行...

3 楼

不理解楼主的意思

4 楼

用VC6编译,不需要改

5 楼


本来就支持空的main()函数啊
只是该函数完成不了任何功能,而且返回给系统空值
有什么奇怪么/?

6 楼

你们真的不知道什么意思 吗?你的函数中加入了语句了!
我的意思是不论你其他部分怎么编写,只要求main函数的格式是
void main(void)
{
return;
}
main函数中除了return;以外,不加入代码,5楼的没有编译过吧??呵呵

还有2楼的吧
#include<iostream.h>
void main(void)
{
    cout<<"Hello World!"<<endl;//有了这一行还是空函数吗?
    return 'void';
}

还有,你即使编译了,你的编译后的可执行文件有甚么用呢?哈哈

7 楼

飘过~
不知所云~

8 楼

template<class T>
class TriDat{
private:
      T data[3];
public:
      TriDat(T d1,T d2,T d3){data[0]=d1,data[1]=d2,data[2]=d3;};
      TriDat(){Input();Output();}
      T Max(void);
      T Min(void);
      T Sum(void);
      T Mid(void);

      void Input(void);
      void Output(void);
 };

static TriDat<int> a;

template<class T>
T TriData<class T>::Sum(void)
{
     T sum=T(0);
     for(int i=0;i<3;i++)sum+=data[i];
     return sum;
     
}
template<class T>
T TriData<class T>::Max(void)
{
     T value=data[0]
     for(int i=1;i<3;i++)value=value>data[i]?value:data[i];
     return value;

template<class T>
T TriData<class T>::Min(void)
{
     T value=data[0]
     for(int i=1;i<3;i++)value=value<data[i]?value:data[i];
     return value;

template<class T>
T TriData<class T>::Mid(void)
{
     return Sum()-Min()-Max();

template<class T>
void TriData<class T>::Input(void)
{
     cin>>data[0]>>data[1]>>data[2];
}
template<class T>
void TriData<class T>::Output(void)
{
    cout<<Min()<<Mid()<<Max()<<endl;
}


int main(void)
{
    return 0;
}

9 楼

不知道你想说啥,但这代码是无法编译的-_-

main函数里不写东西这不是很正常的事情么?说明其它代码仅供观赏。

10 楼

那是你不懂得C++!这个程序是可以编译运行的,还可以执行功能
输入三个数,然后按照从小到大地次序输出,你要是没看出来就是没学过,至少是没学会C++
玄妙尽在static TriDat<int> a;这一句,OK???看懂了再回

我来回复

您尚未登录,请登录后再回复。点此登录或注册