C 中的无符号整数表示法
Unsigned integer notation in C
我已经写了一些代码,但我一直收到这个错误,我不确定如何解决这个问题。
hw6.c:14:13: warning: data argument not used by format string [-Wformat-extra-args]
scanf("&u",n);
~~~~ ^
下面是我的代码:
#include <stdio.h>
unsigned int reverse_bits(unsigned int n);
int main(void) {
unsigned int n;
printf("Enter an unsigned integer: ");
scanf("&u",&n);
printf("%u",reverse_bits(n));
return 0;
}
unsigned int reverse_bits(unsigned int n) {
unsigned int reverse = 0;
while(n>0) {
reverse <<= 1;
if((n & 1) == 1) {
reverse = reverse^1;
}
}
return reverse;
}
谢谢!
Scanf 使用 %
作为其格式说明符,因此正确的方法是
scanf("%u",&n);
我已经写了一些代码,但我一直收到这个错误,我不确定如何解决这个问题。
hw6.c:14:13: warning: data argument not used by format string [-Wformat-extra-args]
scanf("&u",n);
~~~~ ^
下面是我的代码:
#include <stdio.h>
unsigned int reverse_bits(unsigned int n);
int main(void) {
unsigned int n;
printf("Enter an unsigned integer: ");
scanf("&u",&n);
printf("%u",reverse_bits(n));
return 0;
}
unsigned int reverse_bits(unsigned int n) {
unsigned int reverse = 0;
while(n>0) {
reverse <<= 1;
if((n & 1) == 1) {
reverse = reverse^1;
}
}
return reverse;
}
谢谢!
Scanf 使用 %
作为其格式说明符,因此正确的方法是
scanf("%u",&n);