Как исправить error 036 empty statement

error 001: expected token: "%s", but found "%s" - ожидался символ: "%s", но был найден "%s";
error 002: only a single statement (or expression) can follow each "case" - только одно заявление (или выражение) могут следовать за "case";
error 003: declaration of a local variable must appear in a compound block - объявленная локальная переменная должна использоваться в этом же блоке;
error 004: function "%s" is not implemented - функция %s не реализована;
error 005: function may not have arguments - функция не имеет аргументов;
error 006: must be assigned to an array - должен быть присвоен массив;
error 007: operator cannot be redefined - оператор не может быть установлен еще раз;
error 008: must be a constant expression; assumed zero - должно быть постоянным выражением; равным нулю;
error 009: invalid array size (negative or zero) - неверный размер массива (отрицательный или 0);
error 010: invalid function or declaration - неизвестная функция или декларация;
error 011: invalid outside functions - неверно вне функции;
error 012: invalid function call, not a valid address - неверный вызов функции, неверный адрес;
error 013: no entry point (no public functions) - нет точки входа (не public функция);
error 014: invalid statement; not in switch - неверный оператор; не в switch;
error 015: "default" case must be the last case in switch statement - "default" должен быть последним условием в switch;
error 016: multiple defaults in "switch" - несколько "default" в switch;
error 017: undefined symbol "%s" - неизвестный символ "%s";
error 018: initialization data exceeds declared size - данные массива превышают его размер;
error 019: not a label: %s" - не метка "%s";
error 020: invalid symbol name "%s" - неверное имя символа "%s";
error 021: symbol already defined: %s" - символ уже объявлен: "%s";
error 022: must be lvalue (non-constant) - должно быть левосторонним (нет постоянной);
error 023: array assignment must be simple assignment - назначение массива должно быть простым;
error 024: "break" or "continue" is out of context - "break" или "continue" вне контекста;
error 025: function heading differs from prototype - функция заголовка отличается от прототипа;
error 026: no matching "#if..." - не найдено "#if...";
error 027: invalid character constant - недопустимый символ в постоянной;
error 028: invalid subscript (not an array or too many subscripts): "%s" - неверный индекс (это не массив или слишком много индексов): "%s";
error 029: invalid expression, assumed zero - неверное выражение, нет результата;
error 030: compound statement not closed at the end of file - составной оператор не закрыт в конце файла;
error 031: unknown directive - неизвестная директива;
error 032: array index out of bounds (variable "%s") - индекс массива превышен;
error 033: array must be indexed (variable "%s") - массив должен быть проиндексирован;
error 034: argument does not have a default value (argument %d) - аргумент не имеет начального значения (аргумент %d);
error 035: argument type mismatch (argument %d) - несоответствие типа аргумента (аргумент %d);
error 036: empty statement - пустой оператор;
error 037: invalid string (possibly non-terminated string) - неправильная строка;
error 038: extra characters on line - лишние символы в строке;
error 039: constant symbol has no size - символьная константа не имеет размера;
error 040: duplicate "case" label (value %d) - несколько раз объявлен "case" с одним тем же параметром;
error 041: invalid ellipsis, array size is not known - размер массива неизвестен;
error 042: invalid combination of class specifiers - недопустимое сочетание класса;
error 043: character constant exceeds range for packed string - символьная константа превышает размер строки;
error 044: positional parameters must precede all named parameters - позиционные параметры должны предшествовать всем именованным параметрам;
error 045: too many function arguments - слишком много аргументов у функции;
error 046: unknown array size (variable "%s") - неизвестный размер массива;
error 047: array sizes do not match, or destination array is too small - размеры массива конфликтуют, либо целевой массив слишком маленький;
error 048: array dimensions do not match - размеры массива не совпадают;
error 049: invalid line continuation - неправильное продолжение строки;
error 050: invalid range - неверный диапазон;
error 051: invalid subscript, use "[ ]" operators on major dimensions - неправильный индекс, используйте "[]";
error 052: multi-dimensional arrays must be fully initialized - много-размерные массивы должны быть полностью определены;
error 053: exceeding maximum number of dimensions - превышение максимального числа измерений;
error 054: unmatched closing brace - не найдена закрывающаяся скобка;
error 055: start of function body without function header - начало функции без заголовка;
error 056: arrays, local variables and function arguments cannot be public (variable "%s") - массивы, локальные переменные и аргументы функции не могут быть общедоступными;
error 057: unfinished expression before compiler directive - незавершенное выражение для компилятора;
error 058: duplicate argument; same argument is passed twice - дублирование аргумента; Аргумент передается несколько раз;
error 059: function argument may not have a default value (variable "%s") - аргумент не может иметь значение по-умолчанию;
error 060: multiple "#else" directives between "#if ... #endif" - Несколько "#else" между "#if ... #endif" - несколько "#else" между "#if и #endif";
error 061: "#elseif" directive follows an "#else" directive - "#else" перед "#elseif";
error 062: number of operands does not fit the operator - количество операндов не соответствует оператору;
error 063: function result tag of operator "%s" must be "%s" - Результат функции %s должен быть %s;
error 064: cannot change predefined operators - невозможно изменить уже определенные операторы;
error 065: function argument may only have a single tag (argument %d) - в этой функции может быть только один аргумент;
error 066: function argument may not be a reference argument or an array (argument "%s") - аргумент функции не может быть ссылкой или массивом;
error 067: variable cannot be both a reference and an array (variable "%s") - Переменная не может быть как массив или ссылка;
error 068: invalid rational number precision in #pragma - неверное число в #pragma;
error 069: rational number format already defined - формат рационального числа уже определен;
error 070: rational number support was not enabled - рациональное число не поддерживается;
error 071: user-defined operator must be declared before use (function "%s") - объявленный оператор должен быть перед использованием;
error 072: "sizeof" operator is invalid on "function" symbols - оператор "sizeof" не может быть использован для символов функции;
error 073: function argument must be an array (argument "%s") - аргумент %s должен быть массивом;
error 074: #define %s must start with an alphabetic character - #define должен начинаться с буквы;
error 075: input line too long (after substitutions - введенная строка слишком длинная;
error 076: syntax *error in the expression, or invalid function call - неправильный синтаксис или неправильный вызов функции;
error 077: malformed UTF-8 encoding, or corrupted file: %s - плохая кодировка UTF-8 или плохой файл: %s;
error 078: function uses both "return" and "return <value>" - функция использует "return" и "return <значение>";
error 079: inconsistent return types (array & non-array) - несовместимость типов возвращенных результатов;
error 080: unknown symbol, or not a constant symbol (symbol "%s") - неизвестный или непостоянный символ: %s;
error 081: cannot take a tag as a default value for an indexed array parameter (symbol "%s") - не может принимать тег в качестве значения по умолчанию для параметра индексированного массива;
error 082: user-defined operators and native functions may not have states - созданные функции или операторы не имеют состояния;
error 083: a function may only belong to a single automaton (symbol "%s") - функция может принадлежать только к одной автоматизации;
error 084: state conflict: one of the states is already assigned to another implementation (symbol "%s") - конфликт состояния: одно из состояний уже назначено на другую реализацию;
error 085: no states are defined for function "%s" - нет состояний, определенных для функции "%s";
error 086: unknown automaton "%s" - неизвестная автоматизация "%s";
error 087: unknown state "%s" for automaton "%s" - неизвестное состояние "%s" в автоматизации "%s";
error 088: number of arguments does not match definition - количество аргументов не совпадает с объявленными в функции;


#1

Пользователь офлайн
 

Отправлено 15 апреля 2018 — 15:32

  • Прохожий
CMD:asellhouse(playerid, params[])
{
    if(GetString(GetName(playerid), NAME_FULL_ACCESS));
    else if(!gAdminLogged[playerid]) return SendClientMessage(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin);
	new houseid;
	if(sscanf(params, "d", houseid)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /asellhouse [номер дома]");
	else if(!(1 <= houseid <= TOTALHOUSE)) return SendClientMessage(playerid, COLOR_GREY, "Такого дома нет");
	new string[100];
	ClearPlayerHouse(houseid, 2);
	format(string, sizeof(string), "Вы продали дом №%i", houseid);
	SendClientMessage(playerid, COLOR_WHITE, string);
	return 1;
}

C:UsersUserDesktopШЛАКСЕКРЕТНОСЕКТРЕТНОgamemodesСЕКРЕТНО.pwn(25675) : error 036: empty statement
Pawn compiler 3.10.20160907	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Error.

0



#2

Отправлено 15 апреля 2018 — 20:26

  • Новичок

На какой именно строке ошибка? И… да… поправь табуляцию сразу:

CMD:asellhouse(playerid, params[])
{
    if(GetString(GetName(playerid), NAME_FULL_ACCESS));
    else if(!gAdminLogged[playerid]) return SendClientMessage(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin);
    new houseid;
    if(sscanf(params, "d", houseid)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /asellhouse [номер дома]");
    else if(!(1 <= houseid <= TOTALHOUSE)) return SendClientMessage(playerid, COLOR_GREY, "Такого дома нет");
    new string[100];
    ClearPlayerHouse(houseid, 2);
    format(string, sizeof(string), "Вы продали дом №%i", houseid);
    SendClientMessage(playerid, COLOR_WHITE, string);
    return 1;
}

Сообщение отредактировал bard143: 15 апреля 2018 — 20:28

0



#3

Отправлено 15 апреля 2018 — 20:33

Думай, что не так :sleep:

if(GetString(GetName(playerid), NAME_FULL_ACCESS));

0



#4

Отправлено 15 апреля 2018 — 20:42

  • Пользователь

Попробуйте команду в моем исполнении. И кстати, имеется очень полезная «книжечка», вот ссылка: https://pawn.wiki/in…reduprezhdenii/

CMD:asellhouse(playerid, params[])
{
    if(GetString(GetName(playerid), NAME_FULL_ACCESS));
    if(!gAdminLogged[playerid]) return SendClientMessage(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin);
    if(sscanf(params, "i", params[0])) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /asellhouse [номер дома]");
    if(params[0]>TOTALHOUSE || params[0]<0) return SendClientMessage(playerid, COLOR_GREY, "Такого дома нет");
    new string[64];
    ClearPlayerHouse(params[0], 2);
    format(string, sizeof(string), "Вы продали дом №%i", params[0]);
    SendClientMessage(playerid, COLOR_WHITE, string);
    return 1;
}

Сообщение отредактировал opzz: 15 апреля 2018 — 20:42

0



#5

Отправлено 15 апреля 2018 — 21:04

  • Новичок

Просмотр сообщенияopzz (15 апреля 2018 — 20:42) писал:

Нажмите сюда, чтобы прочитать это сообщение. [

Показать

]

Я кое что увидел. Да, я вижу ошибки в коде. И в твоём, и в его, есть что-то, что я не могу понять. Что происходит при первом if?

if(GetString(GetName(playerid), NAME_FULL_ACCESS));

if — в перевод на русский — если, и дословно (часть из переводчика(видоизменено)): если игрок с именем (имя игрока) полный доступ к имени.
В if должно быть или return *ваша функция*. Пример:

if(GetPlayerAdminEx(playerid) != 0) return SendClientMessage(playerid, 0xFF00000, "Ты не админ!")

Или же более расширенная версия того, что выше:

if(GetPlayerAdminEx(playerid) != 0)
{
    SendClientMessage(playerid, 0xFF00000, "Ты не админ!");
    return 0; //если будет ретурн 1 будет продолжение функции, что должно быть выше.
}

А у вас у обоих нет в if НИ-ЧЕ-ГО. Исправляйте.

0



#6

Отправлено 15 апреля 2018 — 21:11

Просмотр сообщенияbard143 (15 апреля 2018 — 21:04) писал:

Нажмите сюда, чтобы прочитать это сообщение. [

Показать

]

Ты не много не прав. В первом условии ошибка заключается в том, что после закрывающей скобки стоит знак «;». Из-за него же и есть эта ошибка. Если не будет знака, выльется в следующею проблему, что условие есть и больше ничего.

По поводу второго условия.

new integer;
---
if(integer) return 1;
{
    return 0;
}

Можно сделать так, тогда твоё условие выглядит так: если integer > 0, возвращаем 1, иначе, возвращаем 0.

Если же поставить «!» перед integer в условии, то условие будет полностью обратным. Тогда оно будет выглядеть так: если integer < 1, возвращаем 1, иначе, возвращаем 0.

Сообщение отредактировал Sonic X: 15 апреля 2018 — 21:11

0



#7

Отправлено 15 апреля 2018 — 21:18

  • Новичок

Просмотр сообщенияSonic X (15 апреля 2018 — 21:11) писал:

Нажмите сюда, чтобы прочитать это сообщение. [

Показать

]

Спасибо) Все мы учимся на ошибках)

0


  • ← Предыдущая тема
  • Проблемы с компилированием
  • Следующая тема →

  • Вы не можете создать новую тему
  • Тема закрыта


1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей

Author

Message

Veteran Member

Old

11-02-2016

, 22:27

 

error 036: empty statement

Reply With Quote

#1


PHP Code:



    switch (get_pcvar_num(g_Pcvar[CVAR_WC3_G_SAVE_MODE]))
    {
        case 
1// SteamID
        
{
            
get_user_authid(idsavebycharsmax(saveby));
            if(
get_pcvar_num(g_Pcvar[CVAR_WC3_G_SAVE_MODE_SECONDARY]) && ((equali(saveby"STEAM_ID_LAN")) || (equali(saveby"VALVE_ID_LAN"))));
            {
                
get_user_name(idsavebycharsmax(saveby));
            }
        }
        case 
2// Name
        
{
            
get_user_name(idsavebycharsmax(saveby));
        }
    } 




__________________

[‘O|s|G’] | Death Wins a.k.a Ish Chhabra was here


Last edited by ish12321; 11-02-2016 at 22:27.

ish12321 is offline

AlliedModders Donor

klippy's Avatar

Join Date: May 2013

Location: Serbia

Old

11-03-2016

, 03:26

 

Re: error 036: empty statement

Reply With Quote

#2


You put a semicolon after the IF statement.

klippy is offline

Veteran Member

Join Date: Oct 2013

Location: Republic of Moldova

Old

11-03-2016

, 09:18

 

Re: error 036: empty statement

Reply With Quote

#3


Quote:

Originally Posted by ish12321
View Post

PHP Code:



    switch (get_pcvar_num(g_Pcvar[CVAR_WC3_G_SAVE_MODE]))
    {
        case 
1// SteamID
        
{
            
get_user_authid(idsavebycharsmax(saveby));
            if(
get_pcvar_num(g_Pcvar[CVAR_WC3_G_SAVE_MODE_SECONDARY]) && ((equali(saveby"STEAM_ID_LAN")) || (equali(saveby"VALVE_ID_LAN"))));
            {
                
get_user_name(idsavebycharsmax(saveby));
            }
        }
        case 
2// Name
        
{
            
get_user_name(idsavebycharsmax(saveby));
        }
    } 




Also you can optimize it and not use switch.

You can directly check for case 1 and add the rest of your condition.
Like this:

PHP Code:



if(get_pcvar_num(g_Pcvar[CVAR_WC3_G_SAVE_MODE]) == && !get_pcvar_num(g_Pcvar[CVAR_WC3_G_SAVE_MODE_SECONDARY]) && !equali(saveby"STEAM_ID_LAN") && !equali(saveby"VALVE_ID_LAN"));
{
    
get_user_authid(idsavebycharsmax(saveby));
}
else
{
    
get_user_name(idsavebycharsmax(saveby));






Last edited by siriusmd99; 11-03-2016 at 09:18.

siriusmd99 is offline

Veteran Member

Napoleon_be's Avatar

Join Date: Jul 2011

Location: Belgium

Napoleon_be is offline

Send a message via Skype™ to Napoleon_be

Veteran Member

Old

11-03-2016

, 11:34

 

Re: error 036: empty statement

Reply With Quote

#5


Quote:

Originally Posted by siriusmd99
View Post

Also you can optimize it and not use switch.

You can directly check for case 1 and add the rest of your condition.
Like this:

PHP Code:



if(get_pcvar_num(g_Pcvar[CVAR_WC3_G_SAVE_MODE]) == && !get_pcvar_num(g_Pcvar[CVAR_WC3_G_SAVE_MODE_SECONDARY]) && !equali(saveby"STEAM_ID_LAN") && !equali(saveby"VALVE_ID_LAN"));

{

    
get_user_authid(idsavebycharsmax(saveby));

}

else

{

    
get_user_name(idsavebycharsmax(saveby));






I’m soon gonna add another case to it

__________________

[‘O|s|G’] | Death Wins a.k.a Ish Chhabra was here

ish12321 is offline

error 001 expected token: «%s», but found «%s» ожидался символ: «%s», но был найден «%s» error 002 only a single statement (or expression) can follow each «case» только одно заявление (или выражение) могут следовать за «case» error 003 declaration of a local variable must appear in a compound block объявленная локальная переменная должна использоваться в этом же блоке error 004 function «%s» is not implemented функция %s не реализована error 005 function may not have arguments функция не имеет аргументов error 006 must be assigned to an array должен быть присвоен массив error 007 operator cannot be redefined оператор не может быть установлен еще раз error 008 must be a constant expression; assumed zero должно быть постоянным выражением; равным нулю error 009 invalid array size (negative or zero) неверный размер массива (отрицательный или 0) error 010 invalid function or declaration неизвестная функция или декларация error 011 invalid outside functions неверно вне функции error 012 invalid function call, not a valid address неверный вызов функции, неверный адрес error 013 no entry point (no public functions) нет точки входа (не public функция) error 014 invalid statement; not in switch неверный оператор; не в switch error 015 default case must be the last case in switch statement default должен быть последним условием в switch error 016 multiple defaults in «switch» несколько «default» в switch error 017 undefined symbol «%s» неизвестный символ «%s» error 018 initialization data exceeds declared size данные массива превышают его размер error 019 not a label: «%s» не метка «%s» error 020 invalid symbol name «%s» неверное имя символа «%s» error 021 symbol already defined: «%s» символ уже объявлен: «%s» error 022 must be lvalue (non-constant) должно быть левосторонним (нет постоянной) error 023 array assignment must be simple assignment назначение массива должно быть простым error 024 break or «continue» is out of context break или «continue» вне контекста error 025 function heading differs from prototype функция заголовка отличается от прототипа error 026 no matching «#if…» не найдено «#if…» error 027 invalid character constant недопустимый символ в постоянной error 028 invalid subscript (not an array or too many subscripts): «%s» неверный индекс (это не массив или слишком много индексов): «%s» error 029 invalid expression, assumed zero неверное выражение, нет результата error 030 compound statement not closed at the end of file составной оператор не закрыт в конце файла error 031 unknown directive неизвестная директива error 032 array index out of bounds (variable «%s») индекс массива превышен error 033 array must be indexed (variable «%s») массив должен быть проиндексирован error 034 argument does not have a default value (argument %d) аргумент не имеет начального значения (аргумент %d) error 035 argument type mismatch (argument %d) несоответствие типа аргумента (аргумент %d) error 036 empty statement пустой оператор error 037 invalid string (possibly non-terminated string) неправильная строка error 038 extra characters on line лишние символы в строке error 039 constant symbol has no size символьная константа не имеет размера error 040 duplicate «case» label (value %d) несколько раз объявлен «case» с одним тем же параметром error 041 invalid ellipsis, array size is not known размер массива неизвестен error 042 invalid combination of class specifiers недопустимое сочетание класса error 043 character constant exceeds range for packed string символьная константа превышает размер строки error 044 positional parameters must precede all named parameters позиционные параметры должны предшествовать всем именованным параметрам error 045 too many function arguments слишком много аргументов у функции error 046 unknown array size (variable «%s») неизвестный размер массива error 047 array sizes do not match, or destination array is too small размеры массива конфликтуют, либо целевой массив слишком маленький error 048 array dimensions do not match размеры массива не совпадают error 049 invalid line continuation неправильное продолжение строки error 050 invalid range неверный диапазон error 051 invalid subscript, use «[ ]» operators on major dimensions неправильный индекс, используйте «[]» error 052 multi-dimensional arrays must be fully initialized много-размерные массивы должны быть полностью определены error 053 exceeding maximum number of dimensions превышение максимального числа измерений error 054 unmatched closing brace не найдена закрывающаяся скобка error 055 start of function body without function header начало функции без заголовка error 056 arrays, local variables and function arguments cannot be public (variable «%s») массивы, локальные переменные и аргументы функции не могут быть общедоступными (переменная «% s») error 057 unfinished expression before compiler directive который недействителен. error 058 duplicate argument; same argument is passed twice дублирование аргумента; аргумент передается несколько раз error 059 function argument may not have a default value (variable «%s») аргумент не может иметь значение по-умолчанию error 060 multiple «#else» directives between «#if … #endif» несколько «#else» между «#if и #endif» error 061 #elseif directive follows an «#else» directive #else перед «#elseif» error 062 number of operands does not fit the operator Количество операторов не соотвествует оператору error 063 function result tag of operator «%s» must be «%s» Результат функции %s должен быть %s error 064 cannot change predefined operators невозможно изменить уже определенные операторы error 065 function argument may only have a single tag (argument %d) в этой функции может быть только один аргумент error 066 function argument may not be a reference argument or an array (argument «%s») аргумент функции не может быть ссылкой или массивом error 067 variable cannot be both a reference and an array (variable «%s») Переменная не может быть как массив или ссылка error 068 invalid rational number precision in #pragma неверное число в #pragma error 069 rational number format already defined формат рационального числа уже определен error 070 rational number support was not enabled рациональное число не поддерживается error 071 user-defined operator must be declared before use (function «%s») объявленный оператор должен быть перед использованием error 072 sizeof operator is invalid on «function» symbols оператор «sizeof» не может быть использован для символов функции error 073 function argument must be an array (argument «%s») аргумент %s должен быть массивом error 074 #define pattern must start with an alphabetic character #define должен начинаться с буквы error 075 input line too long (after substitutions) введенная строка слишком длинная error 076 syntax error in the expression, or invalid function call неправильный синтаксис или неправильный вызов функции error 077 malformed UTF-8 encoding, or corrupted file: %s плохая кодировка UTF-8 или плохой файл: %s error 078 «»}»>function uses both «return» and «return <value>» «»}»>функция использует «return» и «return <значение>» error 079 inconsistent return types (array & non-array) несовместимость типов возвращенных результатов error 080 unknown symbol, or not a constant symbol (symbol «%s») неизвестный или непостоянный символ: %s error 081 cannot take a tag as a default value for an indexed array parameter (symbol «%s») Нельзя взять значение в массив %s error 082 user-defined operators and native functions may not have states созданные функции или операторы не имеют состояния error 083 a function may only belong to a single automaton (symbol «%s») функция может принадлежать только к одной автоматизации error 084 state conflict: one of the states is already assigned to another implementation (symbol «%s») для функции %s уже определенна данная state error 085 no states are defined for function «%s» нет состояний, определенных для функции «%s» error 086 unknown automaton «%s» неизвестная автоматизация «%s» error 087 unknown state «%s» for automaton «%s» неизвестное состояние «%s» в автоматизации «%s» error 088 number of arguments does not match definitionn количество аргументов не совпадает с объявленными в функции

Введения
1.YSI использует много макросов, чтобы сделать вещи проще вам нужно послушать меня.Недостатком является то, что возникает много ошибок и предупреждения очень трудных. Этот «Мануал» должен помочь вам исправить данные ошибки .
КОД:

Код:

// Alternate:
//CMD:kickplayer(playerid, params[])
YCMD:kickplayer(playerid, params[], help) // Warning line.
{
    // Some code here.
}

ПРОБЛЕМА

Код:

<path>errors.pwn(11) : warning 203: symbol is never used: "kickplayer"
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Warning.

Решение
Вы не создали include «YSIy_commands».

Код:

#include <YSIy_commands>

2.
КОД

Код:

timer X() // Error line.
{
}

ПРОБЛЕМА

Код:

<path>errors.pwn(3) : error 010: invalid function or declaration
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Error.

РЕШЕНИЯ

Это недопустимое заявление — нет никакой задержки, заданного таймера.

3.
КОД

Код:

X[100]() // Error line.
{
}

ПРОБЛЕМА

Код:

<path>errors.pwn(3) : error 010: invalid function or declaration
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Error.

Очень похожая проблема до последнего, только на этот раз отсутствует параметр «Таймер» ключевое слово вместо времени.
РЕШЕНИЯ

4.
КОД

Код:

timer X[100](arr[]) // Error line.
{
}

ПРОБЛЕМА

Код:

<path>errors.pwn(3) : error 010: invalid function or declaration
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Error.

РЕШЕНИЯ
Вы имеете право синтаксиса как с «timer» времени, но вы все равно получите недопустимое заявление. На самом деле это еще одна похожая ошибка . Все массивы на «timer», «global» и функции «remotefunc» должны следовать их длине. Строки НЕ нужно в длину, но вместо этого должен быть объявлен как «string:», в противном случае компилятор не может различить эти два понятия.

Код:

timer X[100](arr[], size)
{
}

Или же

Код:

timer X[100](string:arr[])
{
}

5.
КОД

Код:

main()
{
    new
        Iterator:x<100>; // Warning line.
    foreach (new i : x)
    {
    }
}

ПРОБЛЕМА

Код:

<path>errors.pwn(6) : warning 203: symbol is never used: "x@YSII_Cg"
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Warning.

РЕШЕНИЯ
Это является одним из более мения,страшным предупреждающих сообщений.
Массив данных называется «<name> @ YSII_Ag», а переменная величина называется «<name> @ YSII_Cg». Если вы получите предупреждение о том, что переменный размер никогда не используется, это означает, что размер не изменяли.
Если это так, то итератор всегда пуст
Если вы получите сообщение, что «<name> @ YSII_Ag» (массив данных) также никогда не используется, то итератор никогда не используется вообще, даже в «foreach» цикла.

Код:

main()
{
    new
        Iterator:x<100>;
    Iter_Add(x, 10);
    foreach (new i : x)
    {
    }
}

6.
КОД

Код:

main()
{
    new
        Iterator:x<100>;
    Iter_Add(x, 10);
    foreach (i : x) // Error line.
    {
    }
}

ПРОБЛЕМА

Код:

<path>errors.pwn(7) : error 017: undefined symbol "i"
<path>errors.pwn(7) : warning 206: redundant test: constant expression is non-zero
<path>errors.pwn(7) : error 017: undefined symbol "i"
<path>errors.pwn(7) : warning 221: label name "_Y_ITER_C0" shadows tag name
<path>errors.pwn(7) : warning 225: unreachable code
<path>errors.pwn(7) : error 017: undefined symbol "i"
<path>errors.pwn(7) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.

РЕШЕНИЯ
Здесь только первая ошибка-это главное, что все другие вызваны первой. Они могут быть в заблуждение, так как они предоставляют «y_iterate», надо просто не игнорировать их, а и исправить первую ошибку

Код:

main()
{
    new
        Iterator:x<100>;
    Iter_Add(x, 10);
    foreach (new i : x)
    {
    }
}

7.
ПРОБЛЕМА
Компилятор висит.
РЕШЕНИЯ
Существует ряд причин этому, обычно макрос расширяется слишком много кода. Если у вас есть «foreign», «global», «remotefunc» или «timer» такая статья, которая очень большая, подобно:

Код:

timer MyTimer[1000](playerid, string:str[], arr[], size, string:other[], string:final[])
{
}

Приведенный выше код БУДЕТ висеть компилятор. Само по себе это не длинная строка — очень короткая относительно 511 символов максимум, но, как мы знаеем ранее YSI использует много макросов и это расширяет длинный код (эффективное, но долго). Проблема на промежуточных стадиях — код расширяется очень, делаеться очень длинный код, а затем сокращаеться . Попробуйте сократить линию.

Код:

timer MyTimer[1000](p,string:s[],a[],c,string:o[],string:f[])
{
}

Если компилятор по-прежнему висит (и вы убедились, что функция-это проблема, перепробывав все остальные), то вам, возможно, придется прибегнуть к использованию альтернативных методов, таких как basic.Код, сгенерированный «foreign» и «global» настолько велик, что он должен был быть разделен на две части — следовательно, почему эти две ключевые слова были сделаны, чтобы отразить «forward» и «public»
8.
КОД

Код:

main()
{
    inline Func(arr[]) // Error line.
    {
    }
}

ПРОБЛЕМА

Код:

<path>errors.pwn(7) : error 009: invalid array size (negative, zero or out of bounds)
<path>errors.pwn(7) : error 001: expected token: ")", but found ";"
<path>errors.pwn(7) : error 036: empty statement
<path>errors.pwn(7) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.

РЕШЕНИЯ
Это на самом деле подобная проблема с номером 4, но с разными симптомами. К сожалению встроенные функции не могут иметь массивы вообще, даже если за ним следует их размер. Если вы попробывали включают размер вы получите дополнительный:

Код:

<path>errors.pwn(7) : warning 215: expression has no effect

Вы можете, однако, все еще добавить строки с префиксом

Код:

main()
{
    inline Func(string:arr[])
    {
    }
}

9.
КОД

Код:

uvar
    gFirst[MAX_PLAYERS][10], // Error line.
    gSecond[MAX_PLAYERS][10];

ОШИБКА

Код:

<path>errors.pwn(9) : error 010: invalid function or declaration
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Error.

РЕШЕНИЯ
Переменные, объявленные с «new» или «stock» и др.Часто следуют новой строки приведенного выше шаблона примера. По техническим причинам это не может быть сделано с «uvar» и «svar» переменными. Каждый должен находиться на той же строке, что «uvar» или «svar».

Код:

uvar gFirst[MAX_PLAYERS][10];
uvar gSecond[MAX_PLAYERS][10];

10.
КОД

Код:

public DoRead(name[], value[])
{
    INI_String("key", gValue); // Error line.
}

ПРОБЛЕМА

Код:

<path>errors.pwn(12) : error 017: undefined symbol "INI_String"
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Error.

РЕШЕНИЯ
«INI_String»Существует, он просто дает необычный ошибка, когда последний параметр пропущены. Вы должны вызвать его назначения длины.

Код:

public DoRead(name[], value[])
{
    INI_String("key", gValue, sizeof (gValue));
}

11.
КОД

Код:

#include <YSIy_commands>

ПРОБЛЕМА

Код:

<include>YSIy_debug.inc(367) : error 036: empty statement
<include>YSIy_debug.inc(367) : error 036: empty statement
<include>YSIy_amx.inc(367) : error 036: empty statement
<include>YSIy_amx.inc(367) : error 036: empty statement
<include>YSIy_amx.inc(411) : error 036: empty statement
<include>YSIy_amx.inc(411) : error 036: empty statement
<include>YSIy_amx.inc(646) : error 036: empty statement
<include>YSIy_amx.inc(646) : error 036: empty statement
<include>YSIy_amx.inc(780) : error 036: empty statement
<include>YSIy_amx.inc(780) : error 036: empty statement
<include>YSIy_amx.inc(938) : error 036: empty statement
<include>YSIy_amx.inc(938) : error 036: empty statement
<include>YSIy_amx.inc(958) : error 036: empty statement
<include>YSIy_amx.inc(958) : error 036: empty statement
<include>YSIinternaly_shortfunc.inc(144) : error 036: empty statement
<include>YSIinternaly_shortfunc.inc(144) : error 036: empty statement
<include>YSIinternaly_shortfunc.inc(150) : error 036: empty statement
<include>YSIinternaly_shortfunc.inc(150) : error 036: empty statement
<include>YSIinternaly_shortfunc.inc(159) : error 036: empty statement
<include>YSIinternaly_shortfunc.inc(159) : error 036: empty statement
<include>YSIinternaly_shortfunc.inc(174) : error 036: empty statement
<include>YSIinternaly_shortfunc.inc(174) : error 036: empty statement
<include>YSIinternaly_shortfunc.inc(183) : error 036: empty statement
<include>YSIinternaly_shortfunc.inc(183) : error 036: empty statement
<include>YSIinternaly_dohooks.inc(125) : error 036: empty statement
<include>YSIinternaly_dohooks.inc(125) : error 036: empty statement

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


26 Errors.

РЕШЕНИЯ

Когда вы получаете сотни ошибок, как это внутри YSI, он, как правило, вызванные использованием нестандартных редактор (не PAWNO). Нет ничего плохого в других редакторах, некоторые просто созданы с различными умолчанию параметры командной строки для ****** (компилятор). Вы должны убедиться, что вы передаете эти два важных параметра:

12.
КОД

Код:

timer X[100]() // Error line.
{
}

ПРОБЛЕМА

Код:

<path>errors.pwn(3) : warning 218: old style prototypes used with optional semicolon
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Warning.

РЕШЕНИЯ
Это может быть вызвано с помощью любого мода, которые по какой-то необъяснимой причине решил игнорировать стандарта SA:MP форматирование и удаление точек с запятой. Чтобы это исправить, вам нужно сначала удалить эту строку:

13.
КОД

Код:

hook OnGameModeInit() // Error line.
{
}

ПРОБЛЕМА

Код:

<path>errors.pwn(3) : error 021: symbol already defined: "@yH_GameModeInit2"
<path>errors.pwn(3) : error 021: symbol already defined: "@yH_GameModeInit2"
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Warning.

РЕШЕНИЯ

Код:

#include <YSIy_hooks>
#include <other>

hook OnGameModeInit() // Error line.
{
}

Должно быть

Код:

#include <other>
#include <YSIy_hooks>

hook OnGameModeInit() // Error line.
{
}

14.
КОД

Код:

pawnoincludeYSI/y_ini.inc(161) : fatal error 100: cannot read from file: "internaly_version"
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Error.

РЕШЕНИЯ
Истинная проблема здесь

Где-то в коде, и файл был включен неправильно. ВСЕ файлы YSI ДОЛЖНЫ быть включены символом обратного слэша. Меняем:

Автор : Тём4ик
На портале похожего урока не видел,решил сделать,всем спасибо,жду критики!

Понравилась статья? Поделить с друзьями:
  • Как найти среднюю линию трапеции зная периметр
  • Как найти количество точек максимум на производной
  • Клуб как найти слово
  • Как составить гардероб чтобы все сочеталось
  • Как найти классное кино