当前位置:首页 > 我的程序 > 正文内容

关于编译器不愿意说的那些事。

Peirre4年前 (2020-11-23)我的程序855

计算机发展了好多年。当中也不泛有很多对程序的爱好。

很多人不是专业水平,也不是在算法类中特别出众,就是喜欢而已。

好像认为自己就只那个水平,或者为一些调试不通过发愁。

可以说,实际上都不是你的错,是编译器的错误。

现在我展开讲讲。

早在28年前,计算机报上就宣布了一个很小幅面的一个事件。

事件大概是这样子的:在世界上,一个拿计算机科学奖的人,公布了一段只有一行的C语言代码,用的表达式,可以把PI这圆周率计算到500多位。

总字符不超过150位字符。说明了C灵活性很强。

后来进入windows时代,很多人入不了门槛,要么程序很简单,要么根本不会。感觉windows编程不容易。

原因很多,其中之一就是编译器的问题。我说说编译器的问题,看大家有没有遇见过。

现在很多学习C语言的人在windows 下用的是VC6.0 VC6.0已经很早了吧。

正确的VC配置方法是安装VC6.0或以上版本之后。

安装一个intel Compiler 器 VC是 8.1版的。

然后再装一个Visual.Assist助手,搜索文件,填写函数,失误率会少很多。

个人认为,一些重要的函数还是自己写一个放心一点,哈哈。我是业余的,程序也不值钱,所以很懒。

C的链接器会出现链接错误,而这些错误对一个程序模块来说,这个程序是没有问题的。

说明编译器不支持这个功能。另外链接器也会有问题。

链接器会在你的程序上加个”头“代码,你的程序才可以挂到windows 或DOS下执行。就是启动代码和启动数据。

而且方法有很多,这就是VC 的参数 /Mxx 的由来,会加不同的启动代码。

还有终级秘密,哈,大家都在探索。

这两天在玩汇编语言。

太老了,链接器也不好用。windows 下兼容性强的不就是VC link吗,还是老调。

我就把实际上的困难摆摆吧。

我现在用的是RADASM这个编辑器。以后会陆续增加的,解决会删掉。

捕获.PNG

这程序是asmevent.asm 编译通过,到链接时就不通过。

路径不对看见了吗? RADasm + masm32 V 11  这两个是免费软件。

捕获1.PNG

这个测试程序是test Project.asm 也是 RADasm的一个例子。源码断点。

radasm上的不通过。就到这里了,以后慢慢加。两个小例子。

分享给朋友:

相关文章

黑洞数的演示程序。

黑洞数的演示程序。易语言改编,小演示。没多大意思。只是测试一下易语言的扩展功能,有同好者欢迎交流。这个网站没做SEO。也许等你们太久,但是属于个人网页,展示一下。在网上留个脚印。下载地址:黑洞数的演示...

几种在linux中的调试器的编译结果。

几种在linux中的调试器的编译结果。

很多人用源码进行编译,会不成功,原因有很多,我现在讲讲linux 下必有的gdb调试器来说明一下。我用的linux 系统 是 优麒麟 19.04.10.1 加强版,属于试用版。随系统自带的gdb是8....

linux 下的汉字输入法.

linux 下的汉字输入法.

各位老师,才子,同事们好!有很多初级玩linux的同学都会碰到一个难题,也就是在linux 下的汉字输入法.这个问题一直困绕了linux 使用者多年.我还好,每次都使用正常.现在说说心得笔记就可以了....

关于ch341驱动,联动3D打印机USB串口通讯.

关于ch341驱动,联动3D打印机USB串口通讯.

手上有个3D打印机,搬家的原因,好久没用.天气热了,打印温度很适合,正好可以使用.又过了一年.发现linux 版本内核已经升级,和原来的系统不一样了. 按照3D打印机的说明,和寻找它的程序,原来的方法...

linux 下的 opengl SDK。

linux 下的 opengl SDK。

opengl 图形库是开放式图形库,最近出了一个freeglut3 我们下载它:sudo apt-get install freeglut3sudo apt-get install freeglut3...

linux mint 20 下编译最新内核所添加的文件。

linux mint 20 下编译最新内核所添加的文件。

linux mint 20 下编译最新内核文件所需要的两个文件包。sudo apt-get install libncurses5-devsudo apt-get install libssl-dev...