昵称: lifeng6647
园龄: 11年4个月
粉丝: 1
关注: 1
+加关注
面试题:把整数赋值给一个char 结果是什么?
例如
?
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
int main() {
int i = 0;
char a[10];
for (i = 0; i < 10; i++) {
a[i] = i;
printf("i:%d a[%d]:%c a[%d]:%dn", i, i, a[i], i, a[i]);
}
return 0;
}
求输出结果
结果如下
结果及说明:
此处为截断赋值 把整数i的前3位去掉 直接后8位赋值给char 查看ASCII表 对照十进制的1-9 如下:
所以才会得到如上的结果
下面继续测试:
如上 e = 385 截取后面的就剩下1000 0001 赋值给char 于是1000 0001最高位是负数,负数是用补码存储的 -127的补码正是1000 0001 所以值为-127
而看ASCII表最后 所以%c 输出为乱码
继续测试及结果如下
分类: android移动开发
好文要顶 关注我 收藏该文 微信分享
lifeng6647
粉丝 - 1 关注 - 1
+加关注
0
0
升级成为会员
« 上一篇: 关于C++/C中&符号
» 下一篇: C语言字符串的值是否可以被修改
发表于 2017-09-18 21:55 lifeng6647 阅读(10713) 评论(0) 编辑 收藏 举报
刷新页面返回顶部
登录后才能查看或发表评论,立即 登录 或者 逛逛 博客园首页
【推荐】AI之旅:起步即迈出重要一步,博客园与 Chat2DB 达成战略合作
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
【推荐】天翼云爆款云服务器2核2G云超值特惠,一口价35元/1年
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
编辑推荐:
· .NET 9正式发布,亮点是.NET Aspire和AI
· 开发人员,千万不要去碰那该死的业务参数,无论什么时候!
· SQL Server 数据太多如何优化
· 带团队后的日常思考(十六)
· 代码背后的智慧:20条编程感悟
阅读排行:
· .NET 9正式发布,亮点是.NET Aspire和AI
· AI之旅:起步即迈出重要一步,博客园与 Chat2DB 达成战略合作
· 在.NET 9中使用Scalar替代Swagger
· 太强了!14.7K star!Windows系统居然还有开源替代版了?!
· .NET 各版本贡献者列表
相关知识
c语言必背18个经典程序
C语言:输出所有的水仙花数
3012C语言
广东海洋大学C程序设计试卷(第1套)
C语言字符串转数字的5种方法(附带示例)
char s[200]; char str[200]; int d =
c语言编程花朵,C语言花朵代码.doc
int f(char *s) { char *p=s; wh
C语言之正确使用const
2014阿里巴巴实习生笔试题目 .
网址: C语言面试题目:把int 直接赋值给char 例如char c = 10; https://m.huajiangbk.com/newsview546556.html
上一篇: Android UI之Image |
下一篇: 仅用移动开发服务:一分钱不花,开 |