ftsr 发表于 2015-11-5 08:51:44

笔试思科后,我才知道我没有学C++ (zz)

  

  const int x = 5;
int main()
{
      int x = x;
printf("%d\n",x);
return 0;
}
GCC编译后输出是
1994628660
随机结果

const int x = 5;
int main()
{
      int x;
      printf("%d\n",sizeof(x)/sizeof(int));
      return 0;
}
该题输出为 5.

  

  The point of declaration for a name is immediately after its complete declarator (Clause 8) and before its
initializer (if any), except as noted below. [ Example:
int x = 12;
{ int x = x; }
Here the second x is initialized with its own (indeterminate) value. —end example ]

[ Note: a name from an outer scope remains visible up to the point of declaration of the name that hides
it.[ Example:
const int i = 2;
{ int i; }
  declares a block-scope array of two integers. —end example ] —end note ]
  

  
页: [1]
查看完整版本: 笔试思科后,我才知道我没有学C++ (zz)