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

Тема: strmid

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

    Статус
    Оффлайн
    Регистрация
    31.01.2017
    Сообщений
    23
    Репутация:
    0 ±

    strmid

    Не понимаю, может чего не знаю, но когда юзаю в массиве (1) енум с ещё 1 массивом (2), то используя функцию strmid не могу записать строку в массив (1).
    PHP код:
    #include <a_samp>

    main() {}

    enum Test_Enum
    {
        
    Test_String[24]
    };

    new 
    Test_Var[Test_Enum];

    public 
    OnGameModeInit()
    {
        
    strmid(Test_Var[Test_String], "Test_Sentence"0strlen("Test_Sentence"));
        print(
    Test_Var[Test_String]);
        return 
    1;

    Результат:
    PHP код:
    (null
    Нужно ли создавать отдельный массив без использования enum'а или же как-то можно с ним?
    Последний раз редактировалось BodyanZe; 10.01.2018 в 00:24.

  2. #2
    Аватар для L0ndl3m
    Пользователь

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    Давно не писал, поправьте если не прав.
    Так, кстати, работает:
    PHP код:
    enum Test_Enum
    {
        
    Test_String
    };

    new 
    Test_Var[Test_Enum][24];
    ... 
    - - - Добавлено - - -

    Или можно создать обычный массив:
    PHP код:
    new Test_String[24];
    ...
    strmid(Test_String"Test_Sentence"0sizeof (Test_String));
    print(
    Test_String); 
    Последний раз редактировалось L0ndl3m; 10.01.2018 в 00:34.

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

    Статус
    Оффлайн
    Регистрация
    31.01.2017
    Сообщений
    23
    Репутация:
    0 ±
    Да, но я привёл в пример enum с 1 переменной, но в GM там хранятся как переменные действительного типа, так и целочисельного...

    ----

    Ну, я же и спрашивал, стоит ли создавать массив или можно обойтись без него..
    Последний раз редактировалось BodyanZe; 10.01.2018 в 00:40.

  4. #4
    Аватар для Geebrox
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.08.2015
    Адрес
    Ташкент
    Сообщений
    375
    Репутация:
    97 ±
    Вы не указали maxlength (последний параметр функции strmid). sizeof не работает с двумернымы массивами. *(работает, но не в этом случае)


    PHP код:
    #include <a_samp>

    main() {}

    #define TEST_STRING_MAX_LENGTH 24

    enum Test_Enum
    {
        
    Test_String[TEST_STRING_MAX_LENGTH]
    };

    new 
    Test_Var[Test_Enum];

    public 
    OnGameModeInit()
    {
        
    strmid(Test_Var[Test_String], "Test_Sentence"0strlen("Test_Sentence"), TEST_STRING_MAX_LENGTH);
        print(
    Test_Var[Test_String]);
        return 
    1;

    пробуйте
    Последний раз редактировалось Geebrox; 10.01.2018 в 01:51.

  5. Пользователь сказал cпасибо:
    BodyanZe (13.01.2018)
 

 

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

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

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

Ваши права

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