sum = sum * 10 + ch - ‘0‘;的含义

scanf中以%c格式获取的是单个字符[1],实际存储的是该字符对应的编码。

字符'1'实际存储的值是该字符的ascii码[2],即49。

如果想得到整数1,就需要用'1'减去48,48就是'0'。

'1' - '0' = 49 - 48 = 1

相关推荐
Bona Sun7 分钟前
单片机手搓掌上游戏机(十五)—pico运行fc模拟器之编译环境
c语言·c++·单片机·游戏机
white-persist32 分钟前
【攻防世界】reverse | IgniteMe 详细题解 WP
c语言·汇编·数据结构·c++·python·算法·网络安全
Bona Sun3 小时前
单片机手搓掌上游戏机(十六)—pico运行fc模拟器之程序修改烧录
c语言·c++·单片机·游戏机
小邓   ༽3 小时前
50道C++编程练习题及解答-C编程例题
c语言·汇编·c++·编程练习·c语言练习题
Bona Sun5 小时前
单片机手搓掌上游戏机(十三)—pico运行fc模拟器之硬件准备
c语言·c++·单片机·游戏机
Bona Sun5 小时前
单片机手搓掌上游戏机(十八)—pico运行fc模拟器之更大屏幕
c语言·c++·单片机·游戏机
Yue丶越6 小时前
【C语言】自定义类型:结构体
c语言·开发语言
再睡一夏就好6 小时前
string.h头文件中strcpy、memset等常见函数的使用介绍与模拟实现
c语言·c++·笔记·string·内存函数·strcpy
dangdang___go6 小时前
动态内存管理||malloc和free.realloc和calloc
c语言·开发语言·算法·动态内存管理
云雾J视界9 小时前
从位运算到状态机:用纯C重构红外/DS18B20/I²C协议,告别“黑盒库“的嵌入式实战指南
c语言·数据库·重构