(Под «действительным» я подразумеваю стандартный код с определенным поведением, т.е. не зависящим от реализации/неопределенным/и т. д.)
Существует ли сценарий, в котором фрагмент кода, допустимый как на C, так и на C++, будет производить различное поведение при компиляции стандартным компилятором на каждом языке?
Чтобы сделать сравнение разумным/полезным (я пытаюсь узнать что-то практически полезное, а не пытаться найти очевидные лазейки в вопросе), давайте предположим:
- Ничего, связанного с препроцессором (что означает отсутствие хаков с #ifdef __cplusplus, прагмами и т. д.)
- Все, что определено в реализации, одинаково в обоих языках (например, числовые ограничения и т. д.)
- Мы сравниваем достаточно свежие версии каждого стандарта (например, C++98 и C90 или более поздние версии).
Если версии имеют значение, укажите, какие версии каждой из них ведут себя по-разному.
Подробнее здесь: https://stackoverflow.com/questions/128 ... en-compile
Мобильная версия