Анси и комментарии, дающие ошибки? - PullRequest
1 голос
/ 22 декабря 2010

Эй. Я получаю ошибки при компиляции с -ansi -pedantic в строках с // Comment here. Почему это происходит?

ожидаемое выражение перед символом '/'

заблудиться '\ 347' в программе

Пример кода int someVariable = 0; // Some comment

У меня много ошибок, что это?

Ответы [ 2 ]

10 голосов
/ 22 декабря 2010

C89 не поддерживает комментарии в стиле C ++.

4 голосов
/ 22 декабря 2010

Потому что разработчики gcc ошибаются в том, что означает ANSI C, или сохранили опцию в соответствии со старым стандартом "совместимости". ANSI C - это ISO C - это C99, который допускает // комментариев, но когда многие люди говорят ANSI C, они означают «первую стандартизацию языка C с помощью ANSI», то есть C89. Опция gcc -ansi эквивалентна -std=c89.

Если вы пытаетесь обеспечить соответствие современным стандартам, вы должны использовать -std=c99 вместо -ansi.

...