Подтвердить что ты не робот

Какова максимальная длина для идентификатора C/С++ в общих (сборных) системах?

Я не помню, чтобы стандарт говорил что-то о максимальной длине для идентификаторов, поэтому в теории они могут быть длинными. В реальной жизни эти имена могут быть ограничены, по крайней мере, реализацией компилятора и компоновщика.

Хотя это должно работать на всех системах

int a;

этот фрагмент

#!/usr/bin/perl
print "int" . "b" x 2**16 . ";";

создает объявление, которое дает undefined ссылку на std:: somethings с ld при компиляции/связывании (с использованием gcc/mingw).

Итак, каковы пределы размера для идентификатора в разных системах?

4b9b3361

Ответ 2

Приложение B стандарта С++ говорит, что реализация должна поддерживать идентификаторы длиной не менее 1024 символов, но это необязательно.