uint8_t a = 20; int8_t b = -20; char d = 'Z'; float c = 5.5f; printf("a = %u,a = %x,b = %d,c = %f, d = %c,&d = %p",a,a,b,c,d,&d);prrintf不输出
时间: 2024-01-31 15:03:39 浏览: 66
在您的代码中,您使用了错误的格式说明符来打印变量a和变量d。变量a是一个无符号整数,应该使用"%u"格式说明符来打印,而不是"%x"。变量d是一个字符,应该使用"%c"格式说明符来打印,而不是"%s"。
此外,您使用了错误的变量名来打印变量a。在第二个printf语句中,您应该使用变量名a而不是变量名b。
另外,您在第一个printf语句中缺少了一个逗号,应该在变量b和变量c之间添加一个逗号。
最后,您需要在第二个printf语句中将变量d的地址打印为指针类型,应该使用"%p"格式说明符来打印。
正确的代码应该是这样的:
```
uint8_t a = 20;
int8_t b = -20;
char d = 'Z';
float c = 5.5f;
printf("a = %u, a = %x, b = %d, c = %f, d = %c, &d = %p", a, a, b, c, d, (void*)&d);
```
输出结果应该是这样的:
```
a = 20, a = 14, b = -20, c = 5.500000, d = Z, &d = 0x7fff5fbff2df
```
阅读全文