VC++6.0中的错误errorC2447:........是什么意思啊!(具体见内)

gggggame 2002-07-24 10:25:24
errorc2447:missing function header[old-style formal list?]

这错误是什么意思啊?  我在调用函数时出现的错误,而且定义函数时后面应该不加“;”这个分号的,我加了也不出错,而减下去分号到是给我显示错误!

例如:#include <stdio.h>
void xl();
void main()
{
.
.
xl();
.
.
.
}
void xl();//就是这里啊!他会出现上面说的错误,这里的void xl()应该不
    {                 加分号的,我不加时反而是错误了
     }                   

  请各位有经验的高手给我说一说啊!
...全文
400 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lanfengjiyue 2002-07-24
  • 打赏
  • 举报
回复
试过没有?
gggggame 2002-07-24
  • 打赏
  • 举报
回复
还有呢,说的细一点好吗?
lanfengjiyue 2002-07-24
  • 打赏
  • 举报
回复
加了分号,你运行一下。结果应该和预计的不一致。
你前面的代码可能漏大括号了。
这问题我以前也遇到过。
首先新建一个工程名称为ADO的基本对话框工程。然后: 1.在头文件stdafx.h 加入 #import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","rsEOF") 2.在ADODLG.cpp加入 void CADODlg::OnBtnQuery() { CoInitialize(NULL); // 初始化COM环境 _ConnectionPtr conn(__uuidof(Connection)); // 创建连接对象 _RecordsetPtr rst(__uuidof(Recordset)); // 创建记录集 try { conn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=data.mdb;Persist Security Info=False;Jet OLEDB:Database Password=691126" ,"", "", adModeUnknown); // 打开数据库并建立连接(有密码) //conn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=data.mdb;" ,"", "", adModeUnknown); // 打开数据库并建立连接(没有密码) rst->Open(_variant_t("select * from sheet1"), _variant_t((IDispatch*) conn), adOpenDynamic, adLockOptimistic, -1); // 读取数据表 while(!rst->rsEOF) { ((CListBox*)GetDlgItem(IDC_LIST1))->AddString((_bstr_t)rst->GetCollect("姓名")); // 查询"姓名"字段 rst->MoveNext(); } } catch(_com_error e) { CString errormessage; // 保存错误信息 errormessage.Format("Error: %s", e.ErrorMessage()); // 设置错误信息的格式 //AfxMessageBox(errormessage); // 以对话框的形式输出错误信息 MessageBox(errormessage,"错误提示"); } //MessageBox("查询结束!","提示",0); rst->Close(); conn->Close(); rst.Release(); // 释放相应COM接口上的引用计数 conn.Release(); CoUninitialize(); // 卸载COM环境库 }
VC 6.0安装错误 VC调试常错误 程序设计到多线程,VC++6.0默认设置可作以下修改: project->settings->C/C++->Category选Code Generation->Use Run-time Library选Debug MultiThreaded或MultiThreaded 在创建MFC项目时, 不使用MFC AppWizard向导, 如果没有设置好项目参数, 就会在编译时产生很多连接错误, 如error LNK2001错误, 典型的错误提示有: libcmtd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16 msvcrtd.lib(crtexew.obj) : error LNK2001: unresolved external symbol _WinMain@16 nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex 下面介绍解决的方法: 1. Windows子系统设置错误, 提示: libcmtd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main Windows项目要使用Windows子系统, 而不是Console, 可以这样设置: [Project] --> [Settings] --> 选择"Link"属性页, 在Project Options将/subsystem:console改成/subsystem:windows 2. Console子系统设置错误, 提示: LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16 控制台项目要使用Console子系统, 而不是Windows, 设置: [Project] --> [Settings] --> 选择"Link"属性页, 在Project Options将/subsystem:windows改成/subsystem:console 3. 程序入口设置错误, 提示: msvcrtd.lib(crtexew.obj) : error LNK2001: unresolved external symbol _WinMain@16 通常, MFC项目的程序入口函数是WinMain, 如果编译项目的Unicode版本, 程序入口必须改为wWinMainCRTStartup, 所以需要重新设置程序入口: [Project] --> [Settings] --> 选择"C/C++"属性页, 在Category选择Output, 再在Entry-point symbol填入wWinMainCRTStartup, 即可 4. 线程运行时库设置错误, 提示:

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧