无法定义变量

时间:2016-09-26 06:55:21

标签: c variables cs50

当我尝试声明任何类型的变量并为其赋值时,编译器抛出一个未使用的变量错误'下面我使用' 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

3 个答案:

答案 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);