sprintf数据长度疑惑
来源:互联网 发布:网络用语ddp是什么意思 编辑:程序博客网 时间:2024/06/05 09:25
char sw_version_info[20];
.....
if (__copy_from_user(sw_version_info, (void __user*)arg, 20)) {
return -EFAULT;
}
sprintf(chip, "%s", &sw_version_info[1]);
sw_version_info[20]内容十六进制如下:
01 73 77 20 35 33 31 0a 20 20 66 70 73 65 72 76 65 72 3a 4e
chip为unsigned char chip[32],内容如下:
73 77 20 35 33 31 0a 20 20 66 70 73 65 72 76 65 72 3a 4e c0 ff ff ff 13 b0 8c dc 7f 53 88 cb 10
4e之后的内容通过%s显示为乱码。
若将sw_version_info[20]改sw_version_info[32],如下:
01 73 77 20 35 33 31 0a 20 20 66 70 73 65 72 76 65 72 3a 4e 00 00 00 00 00 fe 77 a6 c0 ff ff ff
chip 如下:
73 77 20 35 33 31 0a 20 20 66 70 73 65 72 76 65 72 3a 4e 00 00 00 00 00 00 00 00 00 00 00 00 00
请问乱码的数据是哪里来? sprintf传入的参数格式问题?
.....
if (__copy_from_user(sw_version_info, (void __user*)arg, 20)) {
return -EFAULT;
}
sprintf(chip, "%s", &sw_version_info[1]);
sw_version_info[20]内容十六进制如下:
01 73 77 20 35 33 31 0a 20 20 66 70 73 65 72 76 65 72 3a 4e
chip为unsigned char chip[32],内容如下:
73 77 20 35 33 31 0a 20 20 66 70 73 65 72 76 65 72 3a 4e c0 ff ff ff 13 b0 8c dc 7f 53 88 cb 10
4e之后的内容通过%s显示为乱码。
若将sw_version_info[20]改sw_version_info[32],如下:
01 73 77 20 35 33 31 0a 20 20 66 70 73 65 72 76 65 72 3a 4e 00 00 00 00 00 fe 77 a6 c0 ff ff ff
chip 如下:
73 77 20 35 33 31 0a 20 20 66 70 73 65 72 76 65 72 3a 4e 00 00 00 00 00 00 00 00 00 00 00 00 00
请问乱码的数据是哪里来? sprintf传入的参数格式问题?
0 0
- sprintf数据长度疑惑
- sprintf,求字符串长度
- wireshark抓tcp包长度的疑惑
- 疑惑
- 疑惑
- 疑惑
- 疑惑
- 疑惑
- 疑惑
- 疑惑
- 疑惑
- 疑惑
- 疑惑
- 疑惑
- 疑惑
- 疑惑
- 疑惑
- 疑惑
- java学习(3)-数组以及面向对象
- Windows03.开始玩MFC
- virtual,inline,friend,volatile,mutble,export
- NTC33 Power Station Concert Lucky Draw(ibet Lucky Draw, ibet online casino, Newtown Casino)
- Ubuntu14.04 下安装sublime Text3
- sprintf数据长度疑惑
- C++实验4
- JIRA系统CentOS系统下的开机启动设置
- 【BZOJ 1049】【HAOI 2006】数字序列【DP】
- Java 基础知识总结
- 学习PHP过程中的一些常见代码优化问题
- Linux下curses光标控制
- Swift之CIImage、CGImage、UIImage之间的相互转换
- 1103