C语言无法解析的外部符号?

作者&投稿:茹阀 (若有异议请与网页底部的电邮联系)
用c语言编程序,遇到无法解析的外部符号,求解决方法~

使用cl编译的时候,不会自动帮你链接常用的系统库,所以,需要你手动指定需要的库文件。指定库文件时,可以使用参数/link 库文件,也可以直接写库文件名。
MessageBox函数族(编译器会根据字符集自动判断是使用后缀是A还是W的函数)在库文件User32.lib中,加上就行了,命令行:
cl G:\1.c User32.lib
注意我的源文件是在G盘下的,内容和你的一样。编译结果:

请将schoolwork.c这个源文件添加入工程里,否则根本不会编译到这个文件,只会编译"源.cpp",然而"源.cpp"这个文件并没有main函数。
添加方法:
右键点击“源文件”,在弹出菜单中选择“添加”,在下级菜单中选择“现有项”,此时出现文件浏览对话框
然后找到schoolwork.c,此后“源文件”这一栏里会出现schoolwork.c
再进行编译即可。

你把putoutit函数的}后面的字符全都删了,就行了,大概遇到非法字符停止编译,所以main函数没有被编译,自然就没有_main符号导出了。 .

x和y去掉extern,用extern表示引用其它源文件全局变量,没有其它源文件的话会报错。


c语言无法解析的外部指令?
int main()主函数没有定义,这是不应该犯的错误

C语言 error LNK2019: 无法解析的外部符号 "double __cdecl power(doubl...
power函数没有函数体,需写上函数体。

C语言 错误LNK1120 1 个无法解析的外部命令 怎么解决?
你使用了_stud这个标识符,但是没有定义它。

C语言 无法解析的外部符号
我倒是找到错误了,不知道对不对。你把putoutit函数的}后面的字符全都删了,就行了,大概遇到非法字符停止编译,所以main函数没有被编译,自然就没有_main符号导出了。我用vc7调试的

新手C语言程序求解 无法解析的外部符号 _ptintf,该符号在函数 _main...
include <stdio.h>int main(){ int a,b,n,i; printf("please enter two number ,like a,b\\n"); scanf("%d,%d",&a,&b); if (a>b) n=b; else n=a; for(i=n ;i>0;i--){ \/\/ i>0,从小的数递减到1 if(b%i==0&&a%i==0) \/\/原函数的...

C语言函数已经声明和定义,但仍提示:无法解析外部符号
1、是不是加入大程序时,没有引用那个头文件;2、加入的程序,什么变量或函数与大程序的变量或函数同名?补充:3、加入的函数在文件开头没有声明?

C语言算法生成不出来:error LNK2019: 无法解析的外部符号 _WinMain@16...
可能是你的项目的类型不对,你应该是用的win32程序项目吧?你应该使用Win32控制台程序项目来运行程序。

Visual Studio 2010为何无法生成exe?(C++)(无法解析的外部符号)
产生这个问题可能的原因 产生这个问题的真正原因是c语言运行时找不到适当的程序入口函数,一般情况下,如果是windows程序,那么WinMain是入口函数,如果是dos控制台程序,那么main是入口函数,而如果入口函数指定不当,很显然c语言运行时找不到配合函数,它就会报告错误。可能:1, 你用vc建了一个控制台程序...

C语言求助: 无法解析的外部符号 "void __cdecl update(struct node...
函数有声明但是没有实现

C语言,执行 link.exe 时出错
执行link.exe时出错,是设置错误造成的,解决方法如下:1、首先重新建立工程文件。2、然后选择win32 console application建立。3、接着在打开的页面中,选择工程——设置——连接。4、在工程选项框中找到\/subsystem:windows \/,将其改为\/subsystem:console \/,然后点“确定”。5、最后点击运行程序,如下...

达拉特旗15510811577: C程序 无法解析的外部符号
诸杨白癜: #include "hotel.h" #include "hotel.c" 把前面的写成这样就可以了,当然如果你使用VC的话,在资源管理器的”头文件“那里包含"hotel.h",然后在“源文件”哪里包含hotel.c, 如果你使用的是linux系统,编译选项如下 gcc -o hotel a.c hotel.c

达拉特旗15510811577: C语言为什么是未解析的外部符号 -
诸杨白癜: 意思是这个标识符既不是关键字也不是自定义的变量,出现这种情况要么是有字符打错了,要么是还没有定义就拿来使用了.看你这个应该是打错了吧,print才是打印的意思,你少了个r.

达拉特旗15510811577: C程序无法解析的外部符号
诸杨白癜: 标准的答案!你应该在hotel.h头文件的函数前面加入extern,以表明这是可以被外部文件访问的函数, 例如: externgetnights(void); 另外,在编写头文件的时候,应该编写头文件保护代码, 在头文件的开始处,加入: #ifndefHOTEL_H #defineHOTEL_H 在头文件末尾,加入: #endif

达拉特旗15510811577: C语言函数已经声明和定义,但仍提示:无法解析外部符号 -
诸杨白癜: 1、是不是加入大程序时,没有引用那个头文件; 2、加入的程序,什么变量或函数与大程序的变量或函数同名? 补充: 3、加入的函数在文件开头没有声明?

达拉特旗15510811577: C程序编译时提示无法解析的外部命令 -
诸杨白癜: int contiune_function(void) { printf("\n\nDo you wish to continue? (0=NO/1=YES: "); scanf("%d", &x); 这里名字写错了,应该是:continue_function int continue_function() { printf("\n\nDo you wish to continue? (0=NO/1=YES: "); scanf("%d...

达拉特旗15510811577: Microsoft visual studio2013中写c语言时报错无法解析的外部符号和命令什么 -
诸杨白癜: 这是链接器报出的错误,初学者常见于以下几种情况1,没写main函数,或者拼写错了,比如mian2,建立控制台程序(黑窗口)应实现main函数,建立windows GUI程序,应实现winMain函数,初学者往往出现建立工程类型错误的情况,比如错误的创建了图形界面的工程.3,自定义函数只有声明没实现,然后调用了这个函数.

达拉特旗15510811577: c语言 error 无法解析的外部符号 -
诸杨白癜: 是main() 不是 mian()

达拉特旗15510811577: C语言出现无法解析的外部命令情况是怎么回事,我把结构数据的声明和定义都放在头文件中: -
诸杨白癜: 这个extern是声明而非定义,它表示first在别的某处,肯定是你在别的地方没有定义.你可以在和该头文件对应的cpp文件中定义这三个变量.直接在头文件定义(即去掉extern)是不好的做法,如果多个cpp一起编译,它们引用了不止一次这个头文件,会出现重复定义的错误.最佳的做法是,一处定义,多处声明.

达拉特旗15510811577: 新手C语言程序求解 无法解析的外部符号 - ptintf,该符号在函数 - main 中被引用 -
诸杨白癜: #include <stdio.h> int main(){int a,b,n,i;printf("please enter two number ,like a,b\n");scanf("%d,%d",&a,&b);if (a>b)n=b;else n=a;for(i=n ;i>0;i--){ // i>0,从小的数递减到1if(b%i==0&&a%i==0) //原函数的printf写错了.printf("the gongyueshu between %d and %d is %d\n",a,b,i);}return 0; }

达拉特旗15510811577: 无法解析的外部符号 "int -- cdecl roll - n - dice(int,int)" (?roll - n - dice@@YAHHH@Z -
诸杨白癜: C和C++对函数的命名规则不同(C++需要支持函数重载,因此函数名必须包含参数类型),因此C++不能直接使用C的函数.而有些编译器只是按文件的后缀名区分C源文件和C++源文件,遇到在C++中调用C函数时就会报错……简单的解决方法就是把pe12-7.cpp的文件名改成pe12-7.c或diceroll.c的文件名改成diceroll.cpp

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网