【C++】isupper(int) 为什么形参可以用char类型

黄风大圣 2018-03-30 12:09:24
您好!我刚开始学C++。想请问一下:用cin.get(ch)得到的形参ch为什么可以直接用在isupper中。
百度找到的isupper函数的原型是extern int isupper(int c)。 谢谢!
...全文
341 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
AlbertS 2018-03-30
  • 打赏
  • 举报
回复
char类型可以自动转换、或者要隐式转换成int
sdghchj 2018-03-30
  • 打赏
  • 举报
回复
c/c++没有byte类型,char实质就是1字节的整型,short是2字节整型。
wallesyoyo 2018-03-30
  • 打赏
  • 举报
回复
char类型也属于整型,下面一张图截自K&R的《C程序设计语言》,整型提升了解一下。



自信男孩 2018-03-30
  • 打赏
  • 举报
回复
因为int包含char,char类型提升就是int。再加上内存对齐(对齐int类型),所以一般用int做形参数,但一般都是传char类型进去,因为isupper是判断字母大小写的。

65,189

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧