Я встретил это в стандартном тексте C, любую версию, которую я могу найти для C99 или C11, в §6.8.5:
iteration-statement:
while ( expression ) statement
do statement while ( expression ) ;
for ( expression ; expression ; expression ) statement
for ( declaration expression ; expression ) statement
Четвертый элемент здесь выглядит как for
с одной точкой с запятой, и я не вижу ссылки на этот синтаксис где-либо еще. Может ли кто-нибудь объяснить, что мне не хватает?