-
在C语言中字符用它们的字符集值对应的小整数表示。SPan>
因此, 你不需要任何转换函数: SPan>
如果你有字符, 你就有它的值。SPan>
数字字符和它们对...
-
对于这个问题没有什么好的答案。SPan>
如果这两个值是整数, 可以使用异或的技术, 但是这对浮点值或指针却不行, 对同一个值也无能为力。SPan>
(参见问题3.4和...
-
这是个风格问题, 因此有不少的争论。
很多人认为“嵌套包含文件”应该避免:
盛名远播的“印第安山风格指南”(Indian Hil...
-
尽管这是种常见的需求, 但却没有什么标准的办法。SPan>
gcc 提供了和-E 一起使用的-dM 选项, 其它编译器也有类似的选项。SPan>
如果编译器文档没有帮助...
-
C 的预处理器并不是一个全能的工具。SPan>
注意, 甚至都不能保证有一个单独的程序。SPan>
与其强迫它做一些不适当的事情, 还不如考虑自己写一个专用的预处理工具...
-
一种流行的技巧是用一个单独的用括弧括起来的的“参数” 定义和调用宏,&nbSP;
&nbSP;
参数在宏扩展的时候成为类似printf() 那样的函数的...
-
你可以向接受const-T 的指针的地方传入T 的指针(任何类型T都适用)。SPan>
但是, SPan>
这个允许在带修饰的指针类型上轻微不匹配的规则(明显的例外)却...
-
有两个程序protoize 和unprotoize 可以在有原型和无原型的函数定义和声明之间相互转换。SPan>
这些程序不能完全完成“经典” C 和...
-
简单地说:
实现定义意味着实现必须选择某种行为并提供文档。
未明确意味着实现必须选择某种行为但不必提供文档。
未定义意味着任何事情都可能发生。
标准在任何情况下都不强加需求...
-
某些构造随编译器和硬件的实现而变化, 这一直是C语言的一个特点。SPan>
这种有意的不严格规定可以让编译器生成效率更高的代码, 而不必让所有程序为了不合理的情况承担额外的负...
-
第一, 保存getchar的返回值的变量必须是int型。SPan>
getchar() 可能返回任何字符值, 包括EOF。SPan>
如果把getchar 的返回值截为...
-
strncpy() 最初被设计为用来处理一种现在已经废弃的数据结构——定长, 不 必’n0’ 结束的“字符串&rdquo...
-
确保你知道经典的正则表达式和文件名通配符的不同。
前者的变体在Unix工具ed 和grep 等中使用, 后者的变体在多数操作系统中使用。
有许多匹配正则表达式的包可以利用。
...
-
问题:
我想用qsort() 对一个结构数组排序。
我的比较函数接受结构指针,但是编译器认为这个函数对于qsort() 是错误类型。
我要怎样转换这个函数指针才能避免这样的警...
-
直接的方法是SPan>rand() % N /* 不好*/SPan>试图返回从0 到N ¡ 1 的数字。SPan>
但这个方法不好, 因为许多随机数发生器...
-
如果问题并不是那么简单, 那么回想一下, 电脑一般都是用一种浮点的格式来近似的模拟实数的运算, 注意是近似, 不是完全。SPan>
下溢、误差的累积和其它非常规性是常遇到的麻...
-
为了把printf() 的正确原型说明引入作用域。SPan>对于用可变参数的函数, 编译器可能用不同的调用次序。SPan>
例如, 如果可变参数的调用比固定参数的调用效率...
-
这一段信息不可移植。SPan>
一些旧系统提供一个非标准函数nargs()。SPan>
然而它的可信度值得怀疑, 因为它的典型返回值是参数的字节长度, 而不是参数的个数...
-
“程序在执行前崩溃,用调试器单步跟进,在main()之前死了”SPan>
也许你定义了一个或多个非常大的局部数组(超过上千字节)。SPan>
许...
-
许多地方有可能出错。SPan>
下面是一些通常的检查要点:SPan>1、未初始化的局部变量, 参见问题7.1。SPan>2、整数上溢, 特别是在一些16 比特的机器上...