c语言编程为什么会出现Undefined symbol 错误

代码太长超出了输入字范围到我空间看吧那篇c语言的案例编写悲剧了的文章有错误内容:帮忙节说明一下:和改正方法顺便说一下settextstyle函数控制的是那的颜色... 代码太长超出了输入字范围到我空间看吧
那篇 c语言的案例编写悲剧了 的文章 有错误内容:
帮忙节说明一下:和改正方法
顺便说一下settextstyle函数控制的是那的颜色
展开
 我来答
兔老大米奇
高粉答主

2019-12-12 · 醉心答题,欢迎关注
知道小有建树答主
回答量:988
采纳率:100%
帮助的人:14.3万
展开全部

当出现没有定义的变量,或无法处理的符号时,就会出Undefined symbol 错误,意思是没有定义的符号。

出现undefined symbol错误意味着程序的符号表中找不到这几个符号,我们可以通过 ldd -r ./app 命令看当前可执行程序app的动态库链接是否有问题。 

libz.so.1 => /usr/lib64/libz.so.1 (0x00002b1ecf5f3000)。

这种情况意味着能找到该动态库 libz.so.1 => not found 。

这种就是找不到动态库,出现第二种现象你需要看一下自己的makefile或者动态库配置文件,动态库名字和路劲是否有问题。

扩资资料

<graphics.h>是TC里面的图形库,如果要用的话应该用TC来编译,VC++有他自己的另外图形库。Tc中用initgraph()函数可以切换到图形模式,用closegraph()可以从图形模式切换回字符模式。

initgraph()和closegraph()都是图形函数,使用图形函数必须包括头文件"graphics.h"。

void far i nitgraph(int far *graphdriver, int far *graphmode,char far *pathtodriver);

graphdriver是指向图形驱动序号变量的指针,

graphmode是在graphdriver选定后,指向图形显示模式序号变量的指针,

pathtodriver表示存放图形驱动文件的路径。

威孚半导体技术
2024-08-19 广告
威孚(苏州)半导体技术有限公司是一家专注生产、研发、销售晶圆传输设备整机模块(EFEM/SORTER)及核心零部件的高科技半导体公司。公司核心团队均拥有多年半导体行业从业经验,其中技术团队成员博士、硕士学历占比80%以上,依托丰富的软件底层... 点击进入详情页
本回答由威孚半导体技术提供
风若远去何人留
推荐于2017-10-15 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450110
专业C/C++软件开发

向TA提问 私信TA
展开全部
当出现没有定义的变量,或无法处理的符号时,就会出Undefined symbol 错误,意思是没有定义的符号。

1 C语言要求,所有变量必须先定义后使用。所以,一旦出现了没有定义的变量名,就会报这个错误。
这时需要根据出错的提示信息,包括所在行数,以及未找到的符号名,查找出错的是哪个变量。再根据上下文,确定如何修改。
a. 变量确实没有定义,这时需要补充变量的定义。
b.变量已经定义,但是后续打代码的时候写错了。这个是很常见的,需要注意C语言变量名是区分大小写的,即abc和ABC是两个不同的标识符。
c.变量作用域影响。C语言中,局部变量的作用域是从定义位置开始,到所在大括号结束的。所以如果变量的使用超出了变量的作用域,也会出现这种情况。

2 多余符号。
书写运算符时,如果符号打多了,或者打的不对,也可能出现这种情况。比如
a+b
打成了
a++b
这时也会出现类似的报错。

3 中文符号使用,或全角符号,英文字符,以及空格等的使用。
在C语言中,所有的变量及符号,均需要以半角英文形式。所以一旦在程序中使用了中文符号,或全角字符,均会出现该错误信息。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
L_o_o_n_i_e
推荐于2017-09-18 · TA获得超过4.2万个赞
知道大有可为答主
回答量:8507
采纳率:38%
帮助的人:5142万
展开全部
变量,函数未声明就使用,或漏写了头文件,就会出现Undefined symbol。

settextstyle 不是ANSI C 的标准函数。VC++ 不支持。TC 有此函数,在 graphics.h 里。

void far settextstyle(font,dir,charsize);
int font; // 字体
int dir; // 方向
int charsize; // 大小
不控制颜色

你要查你的编译器说明,了解 settextstyle函数控制什么颜色
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
孙晓麦蒂
2010-07-16 · 超过17用户采纳过TA的回答
知道答主
回答量:37
采纳率:0%
帮助的人:0
展开全部
Undefined symbol 就是说你的程序里出现了这样的变量:未定义而使用。
因此,在使用变量之前必须定义它。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式