Sign in to follow this  
Followers 0
Guest

Урок № 3 Автопосчёт через sizeof

7 posts in this topic

В данном уроке рассмотрим по подробнее подсчет размера .

 

//в переменную str заносим текст
//примитива static, чтобы не пересоздавало переменную
//а const, чтобы значение переменной никогда не менялось
static const 
    str[] = "pawno-rus.ru %s";

new
   //у нас есть один спецификатор %s в котором выведем текст переменной text
    text[13] = "лучший форум";

    //узнаем длину массива переменой string
    string[sizeof str + 12 - 2];
    //sizeof str - длина переменной str
    //добавляем 12, длина переменной text
    //отнимаем 2, убираем спецификатор %s

//format(переменная в которую будет запись, узнаем длину переменной, подключаем нашу строку str, и показываем, что обозначает спецификатор %s);
format(string, sizeof string, str, text);

//вывод результата
SendClientMessage(playerid, -1, string);

 

Share this post


Link to post
Share on other sites

Не очень удачный пример. Если идет скрепление двух-четырех строк, то лучше упаковка и strcat

Share this post


Link to post
Share on other sites
3 часа назад, Artemio сказал:

@m1n1vv Наведите пример. )

Не знаю как , но у меня и все прекрасно так выходит )

new
    string[17] = !"Имя игрока: ";
strcat(string, pInfo[playerid][pName]);
strcat(string, !". Проживает в городе ");
strcat(string, city[pInfo[playerid][pCity]-1]);

Меньше затрат на память и strcat в 7 раз быстрее format

Edited by m1n1vv

Share this post


Link to post
Share on other sites

@m1n1vv, как бы это не экономило память и процессорное время, отчасти это засоряет код, да и написан сего несколько длиннее выходит. Я не пытаюсь сказать, что пишу один символ в минуту, раз для меня этот метод невыгодный. Но разве стоят того эти доли секунд?

Share this post


Link to post
Share on other sites
19 минут назад, odosenok сказал:

@m1n1vv, как бы это не экономило память и процессорное время, отчасти это засоряет код, да и написан сего несколько длиннее выходит. Я не пытаюсь сказать, что пишу один символ в минуту, раз для меня этот метод невыгодный. Но разве стоят того эти доли секунд?

 

Если весь мод делать сплошняком в один файл, то может быть. В модах с инфраструктурой все выглядит компактно. Некоторые гонятся за производительностью, а некоторые за количеством строк.

Share this post


Link to post
Share on other sites

@m1n1vv, ну, конкретно у меня мод разделен на кучу файлов. Не 10-20, гораздо больше. Однако все равно среди прочего не хотелось бы видеть эти пустые строки. Впрочем, диалог бессмыслен, я думаю каждый уже высказал свое мнение на сей счет.

Share this post


Link to post
Share on other sites

Your content will need to be approved by a moderator

Guest
You are commenting as a guest. If you have an account, please sign in.
Reply to this topic...

×   You have pasted content with formatting.   Remove formatting

  Only 75 emoticons maximum are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

Loading...
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.