问题标签 [cc]
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 - 使用gets函数读取字符时出错
我正在将字符串写入文件。但只有字符串的第一部分只插入到文件中。其他人失踪了。例如:如果我写“我喜欢花”,“我”只写到文件中。
linux - 生成共享库时如何保留调试符号
从对象文件生成共享对象时是否有可能保留调试符号?
例如,我使用 cc 使用隐式目标生成带有调试符号的目标文件,并且只将 -g 添加到 CFLAGS。然后,我通过定义一个自定义目标来生成共享对象 (.so) 文件,在该目标中我使用 cc 的 -shared 选项。
到目前为止,我的观察是:
- 当直接从源代码文件生成共享对象时,我确实得到了调试符号
- 从包含调试符号的对象文件生成共享对象时使用 -g 选项无济于事
我的假设是:
- 调试符号确实不包括在内,因为在创建 rpm 时,/usr/lib/rpm/find-debuginfo.sh 会自动运行,并且我收到一些警告说我的文件已经被剥离
如果需要确切的文件进行检查,例如如何生成 radius.so:http://git.ozlabs.org/?p=ppp.git;a=blob;f=pppd/plugins/radius/Makefile 。 linux;h=24ed3e580c4db6aeca129dd22dbe6de5f2d1ff5f;hb=HEAD
我需要再次提及,我已向 CFLAGS 添加了 -g 选项。
谢谢!
c - C代码的奇怪行为(fgets函数)
在我的 C 程序中,fgets
没有读取任何数据。请看下面的代码:
输入限制后,程序显示“输入字符串”并退出(在输入任何数据之前)。如果我删除该 scanf("%d", &limit);
语句,它工作正常。此外,如果在getchar();
上面添加一条语句,fgets
它将正常工作。有谁知道这个问题背后的原因?
c - 从 Sun C 编译器迁移到 gcc
为了与我们的其他程序保持一致,我正在研究在 Solaris 10 机器上从 Sun C 5.9 迁移到 gcc (GCC) 3.4.6 可能存在的缺陷。是否有任何我们应该注意的指南或可能的陷阱列表?
我们已经用以下类型的代码缩小了问题的范围(我们知道这是不好的做法,但长期存在):
可以通过使用 -Wwrite-strings 并检查所有错误来检测此错误。是否还有其他我们应该注意的警告可以从 gcc c 编译器和 Sun C 编译器的差异中指出更多此类可能的运行时错误?
gcc - 使用编译器标志“-static-libgcc”
gcc 中 -static-libgcc 编译器标志的确切用途是什么?
特别是,为什么它们在 Solaris 机器中使用?
c - 编译C程序时cc和cc -c的区别
我是 C 语言的新手,在编译 C 源代码时,我需要知道 cc filename.c 和 cc -c filename.c 有什么区别。我知道 cc -c 命令会创建一个对象模块,如果是这样,如何将该对象模块转换为可执行文件。
matlab - 在 Matlab 中将 .cc 文件编译为 mex 时出错
我正在尝试将 .cc 文件编译为 mex,并且我在 Matlab 中使用 mex 文件名命令。我的编译器是 [1] Lcc-win32 C 2.4.1 in C:\PROGRA~1\MATLAB\R2012b\sys\lcc 。
但是,有一些错误:
我猜第一个错误的原因是sys文件夹中没有time.h文件。取而代之的是 timeb.h 文件。但我不知道以下错误的原因。
以下是一些相关代码:
谁能给我一个提示?
perl - 是否有关于“Config_heavy.pl”键的文档?
安装 perl 后,您可以找到一个Config_heavy.pl
文件,例如/usr/lib/perl5/5.18/mach/Config_heavy.pl
,我想知道是否有一个可以在其中找到的所有键/值对的注释。他们中的一个很清楚,但有时我不确定。
调用perl -V
会在其中显示所有这些值。
我想我真正想知道的是,哪些值真的是“硬”的,因为不仅在这个文件中这样的更改不会产生任何影响,而更改后会产生影响?例如,我可以更改哪个以在 CPAN 中产生效果,例如-I.
在 ccflags 中添加一个 ' ' 以使 CPAN 搜索包含在 <> 而不是 "" 的本地标头(您可以在 Authen::PAM 中找到它;))。
因此,如果在此文件中找到有关密钥的更多信息,我将很高兴了解它们。
c++ - 在mac上重新安装g++
我设法在运行 10.9.1 的 Mac 上的 /usr/bin 文件夹中对 g++ cc c++ gcc 进行了核对。我试过运行 brew install gcc-49、apple-gcc42 并下载 Xcode 的命令行工具。这三个都没有工作。我看到一些消息来源说 OSX 上的 gcc 只是铿锵符号链接。
如果是这样,我可以使用与 cc、g++ 和 c++ 类似的符号链接吗?更好的是,有没有办法将我的系统重置为我最初拥有的任何二进制文件?
c - char * 的奇怪输出与 getchar 到 printf
我正在为即将到来的课程清理我的 C 技能,并且printf
在使用getchar
. 具体来说,我尝试输出的任何字符串都会在每个字母上附加相同的字符序列。foo
变成"f?8@{?o?8@{?o?8@{?"
用cc
, 和f¿:¿o¿:¿0¿:¿
( Apple LLVM 5.0
Xcode) 编译。以下是说明该问题的示例代码:
我到处搜索,但在其他任何地方都没有看到这个,但这似乎有点像一个边缘案例。这是我没有考虑到的某种编码问题吗?