程序清单4.11_intconv.c程序_《C Primer Plus》P74
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了程序清单4.11_intconv.c程序_《C Primer Plus》P74相关的知识,希望对你有一定的参考价值。
// intconv.cpp : 定义控制台应用程序的入口点。 // /* intconv.c -- 一些不匹配的整数转换 */ /* 时间:2018年06月18日 00:27:35 代码:程序清单4.11_intconv.c程序_《C Primer Plus》P74 目的:整数转换不匹配的原因,唯有彻底弄清楚补码才明了 */ #include "stdafx.h" #define PAGES 336 #define WORDS 65618 int _tmain(int argc, _TCHAR* argv[]) { short num = PAGES; short mnum = -PAGES; printf("num as short and unsigned short: %hd %hu ", num, num); printf("-num as short and unsigned short: %hd %hu ", mnum, mnum); printf("num as int and char: %d %c ", num, num); printf("WORDS as int, short, and char: %d %hd %c ", WORDS, WORDS, WORDS); getchar(); return 0; } /* 在VS2010中运行结果: ---------------------------------------------- num as short and unsigned short: 336 336 -num as short and unsigned short: -336 65200 num as int and char: 336 P WORDS as int, short, and char: 65618 82 R ---------------------------------------------- 翻译如下: 数字为 short 和无符号 short:336 336 负数字为 short 和无符号 short:-336 65200 数字为 int和char:336 P 词作为int,short和char:65618 82 R ---------------------------------------------- 总结: 1>.不要期望 %u 转换能把数字和符号分开; 2>.要细心匹配各种不同类型的数值; 3>.唯有在实践中慢慢体会与积累经验; ---------------------------------------------- *
以上是关于程序清单4.11_intconv.c程序_《C Primer Plus》P74的主要内容,如果未能解决你的问题,请参考以下文章
程序清单2.4_nogood.c_程序_《C Primer Plus》P26
程序清单5.3_golf.c程序_《C Primer Plus》P90
程序清单4.3_praise2.c程序_《C Primer Plus》P63
程序清单5.2_shoes2.c程序_《C Primer Plus》P88