-
当你调用free() 的时候, 传入指针指向的内存被释放, AN>
但调用函数的指针值可能保持不变, AN>
因为C的按值传参语义意味着被调函数永远不会永久改变...
-
在调用alloca() 的函数返回的时候, 它分配的内存会自动释放。AN>
也就是说, 用alloca 分配的内存在某种程度上局部于函数的“堆栈帧&rdquo...
-
字符和字符串的区别显而易见, 而strcat() 用于连接字符串。AN>
C 中的字符用它们的字符集值对应的小整数表示, 参见下边的问题8.4。AN>
字符串用...
-
我在检查一个字符串是否跟某个值匹配。AN>
为什么这样不行?AN>
char *string;AN>
. . .AN>
if(s...
-
在C语言中字符用它们的字符集值对应的小整数表示。AN>
因此, 你不需要任何转换函数: AN>
如果你有字符, 你就有它的值。AN>
数字字符和它们对...
-
对于这个问题没有什么好的答案。AN>
如果这两个值是整数, 可以使用异或的技术, 但是这对浮点值或指针却不行, 对同一个值也无能为力。AN>
(参见问题3.4和...
-
这是个风格问题, 因此有不少的争论。
很多人认为“嵌套包含文件”应该避免:
盛名远播的“印第安山风格指南”(IndiAN Hil...
-
尽管这是种常见的需求, 但却没有什么标准的办法。AN>
gcc 提供了和-E 一起使用的-dM 选项, 其它编译器也有类似的选项。AN>
如果编译器文档没有帮助...
-
C 的预处理器并不是一个全能的工具。AN>
注意, 甚至都不能保证有一个单独的程序。AN>
与其强迫它做一些不适当的事情, 还不如考虑自己写一个专用的预处理工具...
-
1983 年, 美国国家标准协会(ANSI) 委任一个委员会X3J11 对C 语言进行标准化。
经过长期艰苦的过程, 该委员会的工作于1989 年12 月14 日正式被批准为AN...
-
问题:
很多ANSI 编译器在遇到以下代码时都会警告类型不匹配。
extern int func(float); int func(x) float x; { . . .
你...
-
你可以向接受const-T 的指针的地方传入T 的指针(任何类型T都适用)。AN>
但是, AN>
这个允许在带修饰的指针类型上轻微不匹配的规则(明显的例外)却...
-
有些ANSI 前的编译器/预处理器把下面这样的宏
#define TRACE(var, fmt) printf("TRACE: var = fmt\n", var)
解释为
...
-
有两个程序protoize 和unprotoize 可以在有原型和无原型的函数定义和声明之间相互转换。AN>
这些程序不能完全完成“经典” C 和...
-
某些构造随编译器和硬件的实现而变化, 这一直是C语言的一个特点。AN>
这种有意的不严格规定可以让编译器生成效率更高的代码, 而不必让所有程序为了不合理的情况承担额外的负...
-
第一, 保存getchar的返回值的变量必须是int型。AN>
getchar() 可能返回任何字符值, 包括EOF。AN>
如果把getchar 的返回值截为...
-
问题:
我发现如果坚持检查返回值以确保用户输入的是我期待的数值, 则 scANf() 的使用会安全很多, 但有的时候好像会陷入无限循环。在scANf() 转换数字的时候, 它遇到...
-
scANf() 有很多问题—— 参见问题12.15, 12.16 和12.17。
而且, 它的%s 格式有着和gets() 一样的问题(参见问题12.20...
-
ANSI/ISO 标准C 函数mktime() 和difftime() 对这两个问题提供了一些有限的支持。
mktime() 接受没有规格化的日期, 所以可以用一个日期的stru...
-
标准C 库函数就有一个: rANd()。
你系统上的实现可能并不完美, 但写一个更好的并不是一件容易的事。如果你需要实现自己的随机数生成器, 有许多这方面的文章可供参考; 象下面...