C If语句与顺序执行
我有一个非常简短的问题。我有一个功能,包括:C If语句与顺序执行,c,if-statement,C,If Statement,我有一个非常简短的问题。我有一个功能,包括: void function(int x) { x = 3; if (x == 4) printf("HI!"); x = 4; } 将单词HI可以打印吗?换句话说,C程序是否按顺序读取 非常感谢 它将不会被打印。上面这一行当然重要。它不会被打印出来。上面这一行当然重要。不,代码编译成一系列指令,这些指令一个接一个依次发生。与4的比较总是在分配x=4之前进行。因此,这将是错误的 当您处理单个线程时,这种类型的命
void function(int x)
{
x = 3;
if (x == 4)
printf("HI!");
x = 4;
}
将单词HI代码>可以打印吗?换句话说,C程序是否按顺序读取
非常感谢 它将不会被打印。上面这一行当然重要。它不会被打印出来。上面这一行当然重要。不,代码编译成一系列指令,这些指令一个接一个依次发生。与4
的比较总是在分配x=4
之前进行。因此,这将是错误的
当您处理单个线程时,这种类型的命令是有保证的。当您有多个线程时,您可能会得到奇怪的结果和竞争条件,除非您非常小心。否,代码会编译成一系列指令,这些指令一个接一个依次发生。与4
的比较总是在分配x=4
之前进行。因此,这将是错误的
当您处理单个线程时,这种类型的命令是有保证的。当您有多个线程时,您可能会得到奇怪的结果和竞争条件,除非您非常小心。为什么不编译它并亲自查看呢?C是一种过程语言;代码块按顺序从上到下运行。@BenjaminGruenbaum-在C语言中并不总是很好的建议:为什么不自己编译并查看一下呢?C是一种过程语言;代码块按顺序从上到下运行。@BenjaminGruenbaum-在C:P中并不总是很好的建议