变量名后的括号在C编程中是否有效?

时间:2016-12-09 06:08:55

标签: c variables declaration variable-declaration

我只是尝试用括号创建变量" n _()"在 C ,但它不起作用它给我错误。有人可以告诉我它里面有什么问题。 enter image description here

2 个答案:

答案 0 :(得分:3)

在C中,int n_();声明一个函数返回int,而不是一个变量。 ()不是,也不能是标识符名称的一部分。

答案 1 :(得分:1)

如果您在标准中看到标识符的定义,则可以获得。

identifier:
   identifier-nondigit
   identifier identifier-nondigit
   identifier digit

identifier-nondigit:
   nondigit
   universal-character-name
   other implementation-defined characters

 nondigit: one of
    _abcdefghijklm
    nopqrstuvwxyz
    ABCDEFGHIJKLM
    NOPQRSTUVWXYZ

digit: one of
    0123456789

标识符只能以nondigit中的值开头,并且将nondigit和digit中的值作为元素

abc, a1234, __abc, ab_c都是有效的标识符。

1abc, abc+, abc(, ab-c,不是有效的标识符。

P.S。 universal-character-name定义如下

universal-character-name:
   \u hex-quad
   \U hex-quad hex-quad

hex-quad:
    hexadecimal-digit hexadecimal-digit
    hexadecimal-digit hexadecimal-digit

它们用于指代不在基本字符集中的字符。例如\ u0024($),\ u0040(@)