问题标签 [c89]
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 - C90 和 typedef
我已经struct point {(...)};
定义了。但是对于 C90,我似乎必须使用 typedef。我该如何正确地做到这一点?typedef struct point {} point;
? typedef struct {} point;
? typedef struct point {};
?
c - -Ansi 和评论给出错误?
我在使用-ansi -pedantic
具有// Comment here
. 为什么会这样?
'/' 标记之前的预期表达式
程序中的杂散“\ 347”
示例代码int someVariable = 0; // Some comment
我有很多很多这些错误,这是什么?
c - 在 C 中传递值
以下代码是否可移植?
我只是按值传递指针,我可以在调用者中更改它!
function - 如何将结构的初始化用作函数调用中的变量。ANSI-C 版本
我正在编写 C89、C90、Ansi-C 代码。我的一个函数需要一个结构作为参数。我想使用该结构的初始化来调用该函数,而不是先创建一个结构然后将其传递给该函数。
以下是一些有效的片段。
这是我想写的,但不起作用:
甚至更好
编辑:LabCVI 使用 ISO 9899:1990 标准。
c - 可以将 C89 代码与 C99 代码混合使用吗?
我对与不同 C 规范相关的许多事情有疑问。
如果我用 C99 编写一个库,我可以从 C89 代码中使用它吗?(仅使用符合 C89 定义的函数)。
例如,这段代码可以在 C89 中使用吗?
共享库的标头:
提前致谢 :)
c - 尝试为常量分配新值
这是从我的模块中提取的:
在初始化后尝试为常量分配新值时,编译器(仅)发出警告消息。
这在 C99 中是不正确的,但我的模块似乎基于 C89,有人可以根据 C89 确认此语句的有效性。
c - 为什么 gcc -ansi 去掉 cosf 之类的声明?
你可能认为我完全疯了,而且非常不擅长编程。其中之一可能是这种情况,但请阅读我的发现。
是的,我#include <math.h>
完整代码可以在这里找到。(我试图使其符合 ansi 以使其在 VS2010 上编译,它通过关于混合代码和声明的错误以及 fminf() 丢失。我很惊讶 VS2010 关心混合代码和具有默认警告级别的声明。我回想 2008 年不在乎,但可能是错的。)
这是使用 c89/-ansi 标准时的 gcc 输出。注意函数的隐式声明。还有一些其他关于未使用的参数,但我们现在不关心这些。(需要签名以注册 GLUT 的回调)
当我使用 c89 或 ansi 标准运行应用程序时,它会产生错误的输出,就像数学函数没有按预期运行一样。
现在使用 c99 标准,函数消息的隐式声明消失了。
使用 c99 标准时,程序的行为符合预期和预期。
问题
为什么使用 -ansi 标志似乎会从 math.h 中删除声明?
c - 如何在没有dirent.h的情况下访问C90中的目录?
我在 C90 的基础上在 LabCVI 工作。
手头的坦克是在“..\data”目录和子目录中找到“*.spec”文件的绝对路径。
我知道有解释我如何使用 dirent.h 来做到这一点,但我需要在没有 dirent.h 的情况下做到这一点。这个(第一部分,第二部分)教程不是我想要的。LabCVI 没有 dirent 标头,我无法从Internet导入 ist,因为 dirent.h 的依赖项与 LabCVI 不兼容。
一旦我杀死了对 LabCVI 的所有依赖项,我计划迁移到更好的 IDE/Language,但我必须让代码保持兼容。所以我不能使用 LabCVI 的目录工具。
我该如何解决这个问题并获得我的目录访问权限?(代码将在 XP 机器上运行。)
c - 这是不好的编码习惯吗?
我正在使用 PC-lint 分析我的代码,这些行正在生成几个错误。这让我想知道我的编码实践是否错误?
编辑:在你的帮助下,我现在有:
看起来怎么样?
c - 将 char 转换为 char 数组或将 char 数组转换为 char?
因此,假设我有一个 char,我想在一行代码中将它 strcat() 转换为 char 数组。对于[一个不实用的]示例:
或者我想做相反的事情,无论数据类型如何,连接或类型转换字符串的适当函数是什么?或者也许我缺少一些语法......
这是一个例子。它编译得很好但崩溃了。