变量选择无效

  • 本文关键字:无效 选择 变量 c
  • 更新时间 :
  • 英文 :


我正在从Yashavant Kanetkar的一本名为"Let us C"的书中学习c语言,在本书中的一个问题中,我们被要求找到变量在c中是否有效,并且有一个变量"_main(("(没有双倒逗号(,作为正常规则,我们知道我们不能在变量名称中使用((,但在解决方案书中,这个变量被认为是有效的。所以请帮助我,我是c的新手,所以请使答案尽可能简单。

//this is the variable
_main()

现在我尝试使用此变量创建一个小型 hello world 程序,正如预期的那样,我遇到了一个错误

#include <stdio.h>
#include <stdlib.h>
int main()
{
int _main();
_main() = 1234;
printf("%d", _main())
return 0;
}

首先,您不能在其声明中的任何位置使用()来命名变量。

通过您给出的代码,我将指出有问题的行。

int _main();

在这里,您转发声明一个名为_main的函数。您告诉编译器您在代码中的某个地方定义了此函数。在这里,您不是在声明变量。

_main() = 1234;

C 语言有 l 值和 r 值的概念。简而言之,l值是代码中可以存储某些值(例如变量(的所有名称,r值是可以存储在l值中的值。通常,您只能将任何值分配给 l 值(赋值的 LHS 必须是 l 值(。也就是说,所有函数返回的都是 r 值,你不能把它放在赋值的左侧。

printf("%d", _main())

2 个问题:A- 您忘记在行尾写;和 B- 名称_main()无法解决,因为它未在您编写的代码中定义。编译此代码时,链接器将尝试查找名为_main的函数的定义位置,但不会找到任何内容。

_main(( 不是 C 变量的有效名称。 不能在变量名称中使用括号。

所有变量名称必须以字母表中的字母或 下划线( _ (。 对于初级程序员来说,开始可能更容易 所有带有字母表字母的变量名称。

在第一个首字母之后,变量名称还可以包含 字母和数字。 但是,没有空格或特殊字符 允许。

大写字符不同于小写字符。 用 所有大写字母主要用于标识常量 变量。

取自这里

最新更新