- 1
- 2
exec "a" * 300000000 + " = 'FUCKING_LONG_VARIABLE'" # Создание переменной с длиннннным именем
exec "print " + ("a" * 300000000) # Выведет 'FUCKING_LONG_VARIABLE'
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−88
exec "a" * 300000000 + " = 'FUCKING_LONG_VARIABLE'" # Создание переменной с длиннннным именем
exec "print " + ("a" * 300000000) # Выведет 'FUCKING_LONG_VARIABLE'
Это был эксперимент (не повторять дома!). Хотелось узнать количество значащих символов в имени переменной, оказалось что все:).
Первая строка кода ужирает около 270 МБ памяти.
da4ever 17.08.2011 03:37 # +6
ничего ты не узнал. попробуй
exec "print " + (("a" * 300000000) + "b")
в старой сишечке валиным идентификатором являлись первые 32 символа имени переменной а твой "эксперемент" доакзал бы, что их триста мильёнов.
Niceblack 17.08.2011 15:17 # 0
inkanus-gray 17.08.2011 15:42 # 0
Разные значения выдаются?
Lure Of Chaos 17.08.2011 11:41 # 0
roman-kashitsyn 17.08.2011 11:54 # +2
JeremyW 17.08.2011 12:29 # −3
Lure Of Chaos 17.08.2011 11:44 # 0
> Хотелось узнать количество значащих символов в имени переменной
а вы проверяете, сколько символов вообще может быть в идентификаторе.
нужно создать 2 переменных, у которых длина имени n, но различаются они только последним символом. n брать с 1 и увеличивать, пока первая переменная != вторая
Lure Of Chaos 17.08.2011 11:48 # +2