问题标签 [lcc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 重定向 lcc 编译器:传递结构参数
我正在尝试为自定义 VM 重新定位 lcc。将结构作为参数(按值)传递时遇到问题。VM 的堆栈从低地址到高地址增长。为参数错误地生成了结构字段的偏移量。
例如,对于下面的代码:
如上所示,结构字段 a 和 bfoo()
位于地址 ( &p
and &p-4
) 和 ( &q
and &q-4
)。这些应该是 ( &p
and &p+4
) 和 ( &q
and &q+4
)。structx
和y
in的地址main()
正确地引用了它们的字段(即生成的地址是&x
,&x+4
和&y
, &y+4
)。我已经验证为 ARG+B 节点生成的代码正确地复制了堆栈上传递的结构参数(复制的结构的基址从低地址开始)。
任何帮助,将不胜感激。
c - C 编程:计算平均有效压力
所以我对 C 编程非常陌生,我被要求编写一个程序来计算内燃机气缸的平均有效压力。
我得到:
MEP = (66,000 * HP) / (L * A * RPM)
A = (pi * D^2) / 4(圆柱截面积
D = 3.5 英寸。(气缸直径)
L = 0.417ft(气缸行程)
转数 = 5000
生命值 = 110
我应该输出 Bore (in)、Stroke (ft) 和 MEP (psi)。
这似乎是一个相对简单的编程,但我只需要一些演练就可以让我到达终点。我正在使用 LCC-Win 进行测试。这就是我到目前为止所拥有的:
c - 不支持的 16 位应用程序
我刚刚下载并安装了 lcc64 编译器。为了测试它是否有效,我编译了这个程序
通过使用lcc64.exe Source.c -o prog.exe
. 但是,如果我尝试prog.exe
在控制台中启动程序,会弹出一个窗口,显示“不支持的 16 位应用程序”、“程序或功能 '\??\C:\lcc\lcc\bin\prog.exe' 无法打开,因为与 64 位版本的 Windows 不兼容。”
我究竟做错了什么?
sdcc - 在 ASM 中为 SDCC/LCC 编译字符串文字
我正在尝试在 ASM 中为 GBDK 的 LCC 编写字符串文字。我可以编写每个单独的字符并且编译器工作正常。
但是,当我尝试将字符组合成一个字符串以使其更具可读性时:
我得到一个编译错误:
有没有办法解决这个问题?
版本信息
c - 最新的 LCC-win64 是否支持 ISO C99 标准数学库?
不久前,LCC 不支持 C99:例如,如果我使用数学函数,例如“sinf”、“acosh”,它就不起作用。
我听说他们在过去几年中一直在增加对 C99 的支持。
有谁知道最新的是否支持C99 ISO?有什么地方可以查到资料吗?
谢谢!