gpt4 book ai didi

c - 十进制到二进制函数中的段错误

转载 作者:行者123 更新时间:2023-11-30 16:06:54 24 4
gpt4 key购买 nike

我尝试编写一个函数,将十进制数转换为 32 位二进制数组。这是我的代码:

void show_bits(int x) {
int array[32];
int n;

while (x >= 0) {

if (x%2 == 0) {
array[n] = 0;

}
else {
array[n] = 1;
}
x = x/2;
n++;
}

for (int i; i<32; i++) {
printf("%d ", array[i]);
}
}

我不太确定我做错了什么,非常感谢任何帮助。

最佳答案

void show_bits(int x) {
int array[32];
int n;

while (x >= 0) {
if (x%2 == 0) {
array[n] = 0; /* ERROR HERE: n isn't set */
}

n 使用未初始化 = 未定义的行为。

关于c - 十进制到二进制函数中的段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59815836/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com