C++-For循环未执行
C++ - For loop not executed
我不明白为什么这个for循环能在中工作
void managingTable(unsigned char table[256][256][1])
{
for (unsigned int x = 0; x <= 255; x++)
{
for (unsigned int y = 0; y <= 255; y++)
{
doSomethingWithTable();
}
}
}
当y达到255时退出,但在x上没有迭代,保持0 ,这是不起作用的
void managingTable(unsigned char table[256][256][1])
{
unsigned int x = 0;
unsigned int y = 0;
for (x; x <= 255; x++)
{
for (y; y <= 255; y++)
{
doSomethingWithTable();
}
}
}
这也不起作用:
void managingTable(unsigned char table[256][256][1])
{
unsigned int x = 0;
unsigned int y = 0;
for ( ; x <= 255; x++)
{
for ( ; y <= 255; y++)
{
doSomethingWithTable();
}
}
}
您的第一个示例为x
的每个迭代声明一个新的y
,从0开始。
您的第二个和第三个示例不会在x
的迭代之间重置y
的值,因此只会执行第一个y
循环。剩余的y
循环被跳过,因为y
已经等于256。
将您的第二个示例更改为如下应该有效:
void managingTable(unsigned char table[256][256][1])
{
unsigned int x = 0;
for (x; x <= 255; x++)
{
unsigned int y = 0;
for (y; y <= 255; y++)
{
doSomethingWithTable();
}
}
}
相关文章:
- 在映射擦除c++期间执行循环的次数
- C++-For循环未执行
- 未在函数C++中执行的循环
- 为什么切换 for 循环的顺序会显著改变执行时间?
- 将执行循环拆分为多个线程 (1-N-1-N-1..)
- 在类 c++ 中执行 while 循环
- C++ - 使用用户输入的字符串数据检查结构字符串数据(无限执行 while 循环)
- 如何仅在父循环的所有迭代都为真时才执行嵌套的 if 语句?
- 在"0"输入停止循环之前正确执行 while 循环?
- 为什么其中一个 while 循环没有被执行 (C++)?
- 为什么 std::chrono 在测量循环和编译器优化的并行 OpenMP 的执行时间时不起作用?
- 需要帮助转换以执行循环
- 在CIN为真后,使用一段时间循环,然后执行循环
- 为什么要执行循环五次并停止
- 如何为回调执行循环 (C++)
- 执行循环,直到系统时间到达特定日期/时间
- 如何在执行循环(C++)时使间隔为秒
- C++菜单的“执行”循环.测试大写和小写:
- ICC 未执行循环不变代码移动
- 程序不执行循环