Error: use of undeclared identifier on an apparently declared variable
Error: use of undeclared identifier on an apparently declared variable
#include <stdio.h>
#include <cs50.h>
int main(void)
{
long creditcardno;
do
{
creditcardno = get_long("enter");
}
while (creditcardno<1000000000000 ||
creditcardno > 9999999999999999);
}
int i = 0;
long cc = creditcardno;
while (cc>0);
{
cc = creditcardno/10;
i++;
}
在上面的 C 程序中,我打算有一个名为 cc 的 long 类型的变量,它将使用用户输入的 creditcardno 的值进行初始化。
收到错误消息:
credit.c:14:11:错误:使用了未声明的标识符 'creditcardno'
通过“未声明的标识符”,clang 意味着您使用了
在 credit.c 的第 14 行命名 creditcardno
没有被定义。如果您打算使用 creditcardno 作为
变量,确保通过指定其类型来声明它,并且
检查变量名是否拼写正确。
据我了解,我定义了变量 creditcardno,因为该变量存储用户输入的信用卡值。
您在 main()
之外编写了这部分代码。这就是它显示错误的原因。
int i = 0;
long cc = creditcardno;
while (cc>0);
{
cc = creditcardno/10;
i++;
}
creditcardno
是主范围内的变量。这就是为什么它只能从主范围访问的原因。
#include <stdio.h>
#include <cs50.h>
int main(void)
{
long creditcardno;
do
{
creditcardno = get_long("enter");
}
while (creditcardno<1000000000000 ||
creditcardno > 9999999999999999);
}
int i = 0;
long cc = creditcardno;
while (cc>0);
{
cc = creditcardno/10;
i++;
}
在上面的 C 程序中,我打算有一个名为 cc 的 long 类型的变量,它将使用用户输入的 creditcardno 的值进行初始化。
收到错误消息:
credit.c:14:11:错误:使用了未声明的标识符 'creditcardno' 通过“未声明的标识符”,clang 意味着您使用了 在 credit.c 的第 14 行命名 creditcardno 没有被定义。如果您打算使用 creditcardno 作为 变量,确保通过指定其类型来声明它,并且 检查变量名是否拼写正确。
据我了解,我定义了变量 creditcardno,因为该变量存储用户输入的信用卡值。
您在 main()
之外编写了这部分代码。这就是它显示错误的原因。
int i = 0;
long cc = creditcardno;
while (cc>0);
{
cc = creditcardno/10;
i++;
}
creditcardno
是主范围内的变量。这就是为什么它只能从主范围访问的原因。