compiler-construction相关内容

运行C脚本与终端的不是X code

目前我开发了几个C程序对利用X code我的Mac。然而,有1的问题。我的学习要求我通过编码来使用某种输入栏。因此,例如,如果用户想要以运行该程序的10倍或希望程序来创建10的答案。我使用“的atoi(ARGV [1])”只是为了获取用户输入。 这正是问题。当我运行程序,它只是开始的错误,这是正常的我quess,因为他正在等待输入,而不是接受它或别的东西。反正我试图解决这个问题,此链接: ..
发布时间:2016-08-22 16:18:07 C/C++

安装/编译pylzma(LZMA Python绑定)

我已经张贴了这个问题了作者的网站,但我想我会问这里。 我一直在试图安装在此设置pylzma: Windows 7的64 的Python 2.6.6 64 AMD64位编译器从Windows Server 2003来SDK 克隆git的回购的git://github.com/fancy$c$c/pylzma.git 通过一个简单的的easy_install pylzma 我得到这 ..
发布时间:2016-08-22 16:09:35 Python

preserving执行管线

返回类型经常检查是否存在错误。但是,在code,将继续执行可以以不同的方式来指定。 如果(!RET) { doNoError code(); } 出口(1); 或如果(RET) { 出口(1); } doNoError code(); 单向重量级的CPU可以推测使用简单的统计靠近接近/地区所采取的分支 - 我研究了分支预测的4位机制(-2,-1,0,+ 1,+ 2)其中零为未 ..
发布时间:2016-08-22 16:01:17 C/C++

在C / C 80位浮点运算++

让承担, B 是 _int64 变量。 需要计算的sqrt((长双)一)* SQRT((长双)B)高precision 80位浮点。 为例。 (__的Int64)(开方((长双)一)* SQRT((长双)一)+ 0.5)!=​​ A 在很多情况下是应该的。 的win32哪个C / C ++编译器可以管理80位浮点运算? 解决方案 您可能不应该使用浮点取一个整数的平方根时,要特别长双这 ..
发布时间:2016-08-22 16:00:32 C/C++

是C函数原型不匹配仅仅是一个警告

请看看我的codeS低于 的#include<&stdio.h中GT;无效printOut的() { 静态INT I = 0; 如果(ⅰ小于10) { printOut的(一); } }INT主(INT ARGC,CHAR *的argv []) { 返回0; } 我想应该有一个错误,由于我调用不存在的功能prototype.Actually中,code。与mingw5编译 ..
发布时间:2016-08-22 15:18:35 C/C++

C到IEC 61131-3 IL编译

我有一些移植现有的C code到 IEC 61131-3 兼容的PLC。 我有分裂code成离散的功能块和编织这些块成标准溶液(梯,FB,结构化文本等)的一些选项。但是这需要以建立每个功能块雕刻备份C code。 当在IEC规格看着我realsied的 IEC指令列表形式可能是一个目标语言的编译器。该wikepedia文章列出了两个开发工具: $ C $坐标系 Beremiz 但 ..
发布时间:2016-08-22 15:17:54 C/C++

如何C / C ++的解析器的工作?

我已经花了很多时间研究PHP解析器如何工作的: 其转换PHP code,最终C $ C $角 但如何公司的C code转换为可执行文件? BTW,如何判断是否语言A可以从数学方面以某种方式转化为B语言? 解决方案 这是一个真正伟大的,真正深刻的问题上有很多计算机科学的部分绘制。 最后,一台电脑上的所有程序发出指令,机器code中的处理器上执行。没有一个“机器code”和每个处理器有 ..
发布时间:2016-08-22 15:04:30 C/C++

是的printf / sprintf的编译器警告的概念突破?

我注意到,有大量的C编译器发出警告时,在的的printf / sprintf函数,格式字符串中的转换说明不匹配的类型或相应参数的数量。 在我看来,像一个概念性的突破,因为C没有根据语言规范有内置的功能。 全部编译器应该知​​道的printf / sprintf的是他们的原型,而不是它们的语义。我知道的printf / sprintf的是标准的C函数,但但他们驻留在独立的库libc,你必须包括s ..
发布时间:2016-08-22 15:02:03 C/C++

用Borland C编译器5.5不工作

我使用Windows 7-64位。 用Borland C ++ 5.5是行不通的。 测试文件HELLO.C #包括LT&;&stdio.h中GT;INT主要(无效) { 的printf(“世界,你好\\ N!”); 返回0; } 错误E2209 HELLO.C 1:无法打开包含文件'stdio.h中“结果 警告W8065 HELLO.C 5:调用函数'printf ..
发布时间:2016-08-22 14:57:47 C/C++

什么是魔术逃亡(\\)字符背后

如何在C / C ++编译器操纵源$ C ​​$ C转义字符[“\\”]?如何编译器的语法来处理这​​个角色写的?什么是编译器遇到此字符后怎么办? 解决方案 大多数编译器分为部分:编译器前端被称为的词法分析器或扫描仪。编译器的这部分读取实际的字符并创建令牌。它有一个状态机,它决定,在看到一个转义字符,是否是正品(例如,当它出现在字符串中),或者修改一个字符。令牌是输出相应的转义字符或其他一 ..
发布时间:2016-08-22 14:21:04 C/C++开发

如何设置选项SConstruct为根据编译器类型C编译器?

我需要为C编译器,例如附加选项添加标志来打开所有的警告,这取决于编译器的类型。例如。对于MSVC我应该使用 env.Append(CPPFLAGS =“/墙​​”) 但MinGW的(GCC)我需要使用: env.Append(CCFLAGS =“-Wall”) 我怎样才能做到这一点scons的方式? 解决方案 您可以只检查编译器的名称: CC = ENV ['CC'] 如果CC = ..
发布时间:2016-08-22 14:14:30 C/C++

什么是C99支持主要的编译器/工具链的状态呢?

要评论我在这里让我停下来想一想的响应:“我真的不知道的C99支持状态是什么” 维基百科给出的细节了几个编译器,但我没有足够的熟悉C99知道所有的比特,标准件,所以我在寻找一个完形概述问题的答案: 什么是C99支持国家重大的编译器/工具链? 解决方案 MSVC:故意不执行,除非它用C ++重叠 GCC:最有用的部分都在(并已一段时间)。一些缺少的功能。 铛:索赔完整的C99支持 ..
发布时间:2016-08-21 22:33:50 C/C++

IS"对于(;;)QUOT;成语无限循环正确地归因于PDP-11 C编译器?

最近我发现,声称这篇文章这个想法到preFER 为(;;)在而(1)来是因为C编译器最初可在PDP-11产生的额外机器指令而(1)。 顺便说一句,现在连的Visual C ++警告倾向于前者。 如何现实是这样的归属(;;)成语? 解决方案 下面是什么V7的Unix编译器 CC 生产(使用的 SIMH 并从的 TUHS ): $猫>交流转换器 主要(){ 而(1); } $猫 ..
发布时间:2016-08-21 22:15:05 C/C++开发

C ++引用的参数和C联动

我曾经遇到过一个工作(与XLC8和MSFT9编译器)件code,含有与C键和一个引用参数定义的函数的C ++文件。这个错误我,因为引用仅限于C ++。有问题的功能是从C code,其中它被声明为代替引用参数取指针参数为相同的类型,称为 简单的例子 的 C ++文件的: 的extern“C”无效F(INT&安培; I) { 我++; } 的 C文件的:无效F(INT *);诠释的m ..
发布时间:2016-08-21 22:14:57 C/C++开发

其中MinGW的文件作为C ++编译器使用

我刚安装MinGW和bin文件夹,我可以看到7的.exe文件编译我的程序: C ++。exe文件 先按g ++。exe文件 的mingw32-C ++。exe文件 的mingw32-G ++。exe文件 gcc.exe 的mingw32-gcc.exe 的mingw32-GCC-4.4.1.exe 我的小程序(testprog.cpp)与他们每个人的编译正确;在 A.EXE ..
发布时间:2016-08-21 22:12:03 C/C++开发

解析后的符号表人口;编译器建设

创建解析树后,我现在来填充符号表。 我要存储信息,如 类型,范围,对于标识符偏移等。 现在我怎么知道是什么类型,标识符的范围,因为我所知道的是该特定ID词位值和行号(词法分析后)。 我如何得到对整个事情。谢谢。 解决方案 现在我怎么知道是什么类型,标识符的范围,因为所有的我 知道的是语义值和行号为特定ID(后 词法分析)。 由于EJP提到的,你需要通过一步解析树。你的 ..
发布时间:2016-08-21 22:05:30 C/C++