【发布时间】:2020-11-28 18:01:41
【问题描述】:
我在网上找到了这个练习,但我不明白为什么结果是“aaaaaaaa”。你能帮帮我吗?
#include <stdio.h>
void a(char * s) {
while(*s++ != '\0')
printf("a");
}
int main() {
int data[5] = {-1,-3,256,-4,0};
a((char *) data);
return 0;
}
【问题讨论】:
-
我建议你尝试打印(十六进制)每个假定的
char的值,看看它们是什么。尝试将-3更改为3,看看有什么不同。实验。 -
调试器.......
标签: c endianness bit-representation