Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 5 из 5

Тема: sscanf warning

  1. #1
    Аватар для _TranE_
    Пользователь

    Статус
    Оффлайн
    Регистрация
    16.05.2015
    Адрес
    Compton
    Сообщений
    6
    Репутация:
    0 ±

    sscanf warning

    Здравствуйте. Летят варнинги в логи сервера при каждом использовании:
    Код HTML:
    sscanf warning: Format specifier does not match parameter count.
    Как исправить?

    PHP код:
    if(text[0] == '!')
          {
              
    strdel(text,0,1);
            if(
    strlen(text) == 0) return 0;
            new 
    sid = -1;
            if(
    sscanf(text,"p< >d{s}",sid)) return 0;
            if(!
    IsPlayerConnected(sid)) return 0;
            new 
    bool:sfp false;
            for(new 
    0strlen(text); i++)
            {
                if(!
    sfp)
                {
                    if(
    text[i] == ' ')
                    {
                        
    sfp true;
                        
    strdel(text,0,i+1);
                        
    0;
                    }
                }
                else
                {
                    if(
    text[i] == ' ')
                    {
                        
    strdel(text,0,i+1);
                        
    i--;
                    }
                       else break;
                }
            }
            if(
    strlen(text) == 0) return 0;
            new 
    sn[32],tn[32],stext[144];
            
    GetPlayerName(playerid,sn,32);
            
    GetPlayerName(sid,tn,32);
            
    format(stext,144,"%s [%d]: {ffffff}%s, %s",snplayeridtntext);
            
    SendClientMessageToAll(GetPlayerColor(playerid),stext);
            return 
    0;
        } 

  2. #2
    Аватар для #Vito
    #define

    Статус
    Оффлайн
    Регистрация
    14.09.2013
    Адрес
    Одесса
    Сообщений
    129
    Репутация:
    38 ±
    PHP код:
    if(sscanf(text,"p< >d{s}",sid)) return 0
    При использовании sscanf нужно устанавливать размер массива.

    То есть:
    PHP код:
    if(sscanf(text,"p< >d{s[32]}",sid)) return 0
    Skype: vitya.saveliev


  3. #3
    Аватар для _TranE_
    Пользователь

    Статус
    Оффлайн
    Регистрация
    16.05.2015
    Адрес
    Compton
    Сообщений
    6
    Репутация:
    0 ±
    Не помогло..

    PHP код:
    [01:57:45] [chat] [_TranE_]: !0 тест
    [01:57:45sscanf warningFormat specifier does not match parameter count.
    [
    01:57:48] [chat] [_TranE_]: !0 тест
    [01:57:48sscanf warningFormat specifier does not match parameter count.
    [
    01:57:49] [chat] [_TranE_]: !0 тест
    [01:57:49sscanf warningFormat specifier does not match parameter count.
    [
    01:57:49] [chat] [_TranE_]: !0 тест
    [01:57:49sscanf warningFormat specifier does not match parameter count

  4. #4
    Аватар для #Vito
    #define

    Статус
    Оффлайн
    Регистрация
    14.09.2013
    Адрес
    Одесса
    Сообщений
    129
    Репутация:
    38 ±
    Вгляделся в код, немного не понял что делает эта сис-ма.. Но
    PHP код:
    if(sscanf(text,"p< >d{s}",sid)) return 0
    Зачем тебе два параметра, если массив один?

    sid - ID игрока?
    Попробуй так..
    PHP код:
    if(sscanf(text,"d",sid)) return 0
    Skype: vitya.saveliev


  5. Пользователь сказал cпасибо:
    _TranE_ (16.09.2015)
  6. #5
    Аватар для _TranE_
    Пользователь

    Статус
    Оффлайн
    Регистрация
    16.05.2015
    Адрес
    Compton
    Сообщений
    6
    Репутация:
    0 ±
    Цитата Сообщение от #Vito Посмотреть сообщение
    Вгляделся в код, немного не понял что делает эта сис-ма.. Но
    PHP код:
    if(sscanf(text,"p< >d{s}",sid)) return 0
    Зачем тебе два параметра, если массив один?

    sid - ID игрока?
    Попробуй так..
    PHP код:
    if(sscanf(text,"d",sid)) return 0
    Спасибо, помогло, с меня +. Тему можно закрывать.

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •