无法定义变量
Can't define a variable
当我尝试声明任何类型的变量并为其赋值时,编译器抛出 'unused variable error'。下面我使用 '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
它实际上是警告而不是错误,但由于 -Werror
标志,您将其视为错误。
长话短说,如果您使用变量,它将不再 return 错误。
#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);
}
flow
未被您的程序使用 - 它不涉及任何副作用,您只需为其分配一个值并丢弃它。好的编译器会警告这些未使用的变量。
通过使用 -Werror
,您将警告变成了错误。
似乎是合法的,您没有在任何地方使用该变量。尝试打印出来;
printf("%.2f", flow);
当我尝试声明任何类型的变量并为其赋值时,编译器抛出 'unused variable error'。下面我使用 '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
它实际上是警告而不是错误,但由于 -Werror
标志,您将其视为错误。
长话短说,如果您使用变量,它将不再 return 错误。
#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);
}
flow
未被您的程序使用 - 它不涉及任何副作用,您只需为其分配一个值并丢弃它。好的编译器会警告这些未使用的变量。
通过使用 -Werror
,您将警告变成了错误。
似乎是合法的,您没有在任何地方使用该变量。尝试打印出来;
printf("%.2f", flow);