相关疑难解决方法(0)

我在哪里可以找到当前的C或C++标准文档?

对于许多问题,答案似乎可以在"标准"中找到.但是,我们在哪里找到它?最好是在线.

谷歌搜索有时会觉得徒劳,尤其是对于C标准,因为他们在编程论坛的大量讨论中被淹没.

要开始这个,因为这些是我现在正在搜索的,那里有很好的在线资源:

  • C89
  • C99
  • C11
  • C++ 98
  • C++ 03
  • C++ 11
  • C++ 14

c c++ standards c++-faq

394
推荐指数
8
解决办法
12万
查看次数

do-while声明正文中的声明范围

你为什么不能声明while循环里面做的一个变量?OP询问为什么do-while循环的while-condition中的声明不在do语句的范围内.这将是非常不自然的,因为C/C++通常遵循"顶级声明"模式.但是相反的是 - 为什么不将do语句中的任何声明的范围扩展到while条件.这样就可以了

int i;
do {
  i = get_data();
  // whatever you want to do with i;
} while (i != 0);
Run Code Online (Sandbox Code Playgroud)

被缩短为

do {
  int i = get_data();
  // whatever you want to do with i;
} while (i != 0);
Run Code Online (Sandbox Code Playgroud)

它为限制控制变量的范围提供了一个整洁的语法.(注意:我知道这不是有效的语法 - 这就是问题的关键,为什么不扩展语言以允许这种语法.)

正如我在下面的评论中指出的那样,这个扩展不会破坏现有代码,并且非常符合引入for-init(和while-init)范围的精神.

c++ declaration language-lawyer do-while

7
推荐指数
1
解决办法
1042
查看次数

标签 统计

c++ ×2

c ×1

c++-faq ×1

declaration ×1

do-while ×1

language-lawyer ×1

standards ×1