error: ‘for’ loop initial declarations are only allowed in

使用gcc,出现如下错误:

thread_join.c:7:5: error: ‘for’ loop initial declarations are only allowed in C99 mode
     for (int i = 0; i < 2; ++i)
     ^
thread_join.c:7:5: note: use option -std=c99 or -std=gnu99 to compile your code

error: ‘for’ loop initial declarations are only allowed in_第1张图片

出错的代码如下:

error: ‘for’ loop initial declarations are only allowed in_第2张图片

这是因为使用gcc时,直接在for循环中初始化落变量,这是因为gcc基于c89标准,换成C99标准就可以在for循环内定义i变量了。

gcc thread_join.c -std=c99 -lpthread -o thread_join

error: ‘for’ loop initial declarations are only allowed in_第3张图片

你可能感兴趣的:(c)