scanf("%d %d %d",&i,&j,&k); printf("%d %d %d\n",i,j,k),i,j为int型,k为char型时,输入任意三个数,输出的第二个数总是0,如输入1 2 3 则会输出1 0 3,i,j,k都是 int型时,输出和输入一样,请问是什么原因?
4条回答
- 李洛克07 2014-12-04 14:03关注
定义的时候顺序是 ijk, scanf 将 输入信息以sanf 制定 格式写入, sanf 的时候是%d, k 写入的区域认定为整型, 4字节, 由于栈的特点, 在前面定义的j的低三位被擦除了。所以看起来是0
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 ubuntu子系统密码忘记
- ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
- ¥15 保护模式-系统加载-段寄存器
- ¥15 matlab求解平差
- ¥15 电脑桌面设定一个区域禁止鼠标操作
- ¥15 求NPF226060磁芯的详细资料
- ¥15 使用R语言marginaleffects包进行边际效应图绘制
- ¥20 usb设备兼容性问题
- ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
- ¥15 安装svn网络有问题怎么办