预期的标识符或 C 中的“(”
expected identifier or '(' in C
我最近开始在 Edx 上学习 CS50 课程。我被困在第二个问题集上,因为当我尝试编译我的代码时,出现了这条消息:
expected identifier or '(' in C
如果你需要我的代码,这里是:
#include <stdio.h>
#include <cs50.h>
int main (int argc, string argv[])
int key;
{
if (argc != 2)
{
printf("error\n");
}
else
{
key = atoi(argv[1]);
if (key == 0 || key < 0)
{
printf("error");
}
else
{
printf("%i\n", key);
}
}
}
如果我的代码还有什么问题,你能帮我提示一下吗?
int main (int argc, string argv[])
{
int key;
需要在括号内
您的代码应如下所示:
int main (int argc, string argv[])
{ // <-- every function definition begins with {
int key;
if (argc != 2)
{
printf("error\n");
}
else
{
key = atoi(argv[1]);
if (key == 0 || key < 0)
{
printf("error");
}
else
{
printf("%i\n", key);
}
}
}
您的问题是一个简单的打字错误,因此应该关闭它。我发布了完整的代码,因为我无法在单个评论中显示它。
将声明 int key
移到 main
的括号内。
然后将main的string argv[]
参数改为char* argv[]
。 string argv[]
对于 main
签名根本不正确。
您还需要包括 stdio.h 和 stdlib.h。
您的代码如下所示:
#include <stdio.h>
#include <stdlib.h>
int main (int argc, char* argv[])
{
int key;
if (argc != 2)
{
printf("error\n");
}
else
{
key = atoi(argv[1]);
if (key == 0 || key < 0)
{
printf("error");
}
else
{
printf("%i\n", key);
}
}
}
已通过 Coliru
验证
我最近开始在 Edx 上学习 CS50 课程。我被困在第二个问题集上,因为当我尝试编译我的代码时,出现了这条消息:
expected identifier or '(' in C
如果你需要我的代码,这里是:
#include <stdio.h>
#include <cs50.h>
int main (int argc, string argv[])
int key;
{
if (argc != 2)
{
printf("error\n");
}
else
{
key = atoi(argv[1]);
if (key == 0 || key < 0)
{
printf("error");
}
else
{
printf("%i\n", key);
}
}
}
如果我的代码还有什么问题,你能帮我提示一下吗?
int main (int argc, string argv[])
{
int key;
需要在括号内
您的代码应如下所示:
int main (int argc, string argv[])
{ // <-- every function definition begins with {
int key;
if (argc != 2)
{
printf("error\n");
}
else
{
key = atoi(argv[1]);
if (key == 0 || key < 0)
{
printf("error");
}
else
{
printf("%i\n", key);
}
}
}
您的问题是一个简单的打字错误,因此应该关闭它。我发布了完整的代码,因为我无法在单个评论中显示它。
将声明 int key
移到 main
的括号内。
然后将main的string argv[]
参数改为char* argv[]
。 string argv[]
对于 main
签名根本不正确。
您还需要包括 stdio.h 和 stdlib.h。
您的代码如下所示:
#include <stdio.h>
#include <stdlib.h>
int main (int argc, char* argv[])
{
int key;
if (argc != 2)
{
printf("error\n");
}
else
{
key = atoi(argv[1]);
if (key == 0 || key < 0)
{
printf("error");
}
else
{
printf("%i\n", key);
}
}
}
已通过 Coliru
验证