【发布时间】:2016-09-07 18:50:47
【问题描述】:
int main(int argc, char *argv[]){
unsigned char Data = 0xff;
unsigned short addr = 0xff;
sscanf(argv[1], "%u", &Data);
sscanf(argv[2], "%hu", &addr);
printf("data is %u addr is %hu ", Data, addr);
return 0;
}
您好,我正在尝试将十六进制格式的命令行参数读入 unsigned char 和 unsigned short。请检查上面的代码sn-p。输出始终为 0xff(初始化值)。我可以知道需要更改什么来读取输入吗?
【问题讨论】:
-
%u是Data的不正确格式说明符,声明为char -
另外,出现提示时您输入什么值?
-
运行命令:./out 0x1e 0x2e
标签: c