当我尝试声明任何类型的变量并为其赋值时,编译器抛出一个未使用的变量错误'下面我使用' float'作为变量类型并尝试将其分配给1.5。
#include <stdio.h>
#include <cs50.h>
int main(void)
{
printf("How long is your shower?\n");
int time = GetInt();
float flow = 1.5;
}
编译器抛出此错误:
~/workspace/pset1/ $ make water
clang -ggdb3 -O0 -std=c11 -Wall -Werror -Wshadow water.c -lcs50 -lm -o water
water.c:10:11: error: unused variable 'flow' [-Werror,-Wunused-variable]
float flow = 1.5;
^
1 error generated.
make: *** [water] Error 1
答案 0 :(得分:6)
flow
- 它不涉及任何副作用,您只需为其分配值并将其丢弃。好的编译器警告这些未使用的变量。
使用-Werror
,您将警告变为错误。
答案 1 :(得分:3)
它实际上是一个警告,而不是错误,但由于-Werror
标志,您将其视为错误。
长话短说,如果使用变量,它将不再返回错误。
#include <stdio.h>
#include <cs50.h>
int main(void)
{
printf("How long is your shower?\n");
int time = GetInt();
float flow = 1.5;
printf("Flow: %.2f, time: %d", flow, time);
}
答案 2 :(得分:1)
似乎合法,你没有在任何地方使用变量。尝试打印出来;
printf("%.2f", flow);