enum магия - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: Non-English (
https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (
https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Русский/Russian (
https://sampforum.blast.hk/forumdisplay.php?fid=32)
+---- Thread: enum магия (
/showthread.php?tid=626854)
enum магия -
BitMan - 21.01.2017
Как во втором варианте получается 65? Как работает эта магия?
PHP Code:
enum edata
{
name[25],
pass[65],
logged
}
new pInfo[100][edata];
stock const psize[ sizeof(pInfo[]) ];
PHP Code:
printf("%d", pass); // 25
PHP Code:
printf("%d", sizeof(psize[pass])); // 65
PHP Code:
printf("%d", sizeof(psize[25])); // error
Re: enum магия -
Eims - 21.01.2017
Ты указываешь на конкретный член перечисления и sizeof возвращает его размер.
А в третьем случае ошибка из-за того, что у тебя в результате получается одномерный массив, размер которого равен 91-ой ячейке, ибо при инициализации ты обращаешься не к перечислению, а к массиву pInfo.