理解 getopt() 示例。 int 与 char 的比较
大家好,我希望你能帮助我理解为什么 getopt 使用 int 以及 getopt 中 optopt 变量的处理。对于 C++ 来说还很陌生。 查看getopt,optopt被定义为一个…
两个字符相加产生 int
我制作了一个简单的程序,并使用 GCC 4.4/4.5 对其进行了编译,如下所示: int main () { char u = 10 char x = 'x' char i = u + x return 0 } g++ -…
C 中整数提升和整数转换之间有什么区别?
C++ 标准的 4.5 节(整数提升)讨论了将整数类型转换为更高级别类型的具体情况。 C++ 标准的第 4.7 节(积分转换)开头为(第 4.7.1 条): 整数类型…
制作普通 int 64 位会破坏很多合理的代码吗?
直到最近,我还认为大多数系统实现者/供应商即使在 64 位机器上也保留普通 int 32 位的决定是一种权宜之计。对于现代 C99 固定大小类型(int32_t 和 u…
面试问题中的这个位操作代码有什么问题?
我正在查看此页面: http://www.devbistro.com/ tech-interview-questions/Cplusplus.jsp,并且不明白这个问题: 以下代码可能存在什么问题? 长值; …
如果 char c = 0x80,为什么 printf("%d\n", c << 1) 输出 -256?
#include<stdio.h> int main(void) { char c = 0x80 printf("%d\n", c << 1) return 0 } 在本例中,输出为 -256。如果我写 c << 0 则输出…
算术运算期间的数据类型提升:-1 < (unsinged int) 1 == false
main() { if ( -1 < (unsigned char) 1 ) printf("less than") else printf("NOT less than") } 打印小于。因为,(unsigned char) 1 被转换为 (sign…
通过引用传递和返回参数时的整体提升?
我正在阅读一些有关重载解析的内容,发现了一些让我困扰的内容...在以下代码中: int const& MaxValue(int const& a, int const& b) { retur…
C:8x8->整数提升保证 16 位乘法精度?
我试图弄清楚 C 标准(C90,尽管我正在研究 Derek Jones 的带注释的 C99 书)是否保证我在将两个无符号 8 位值相乘并存储为 16 位结果时不会丢失精度…
在存在 unsigned int 和signed int 的 C 表达式中,哪种类型将提升为哪种类型?
我对C语言标准中的数据类型提升规则有疑问。 C99 规定: C 整数提升还要求“如果 int 可以表示原始类型的所有值,则将该值转换为 int;否则,将其转换…
常见的算术转换——一套更好的规则?
考虑以下代码: void f(byte x) {print("byte")} void f(short x) {print("short")} void f(int x) {print("int")} void main() { byte b1, b2 short …
- 共 1 页
- 1