![]() |
#651 |
Big Clucker
![]() ![]() Join Date: Dec 2015
Posts: 65
Reputation: 9
|
![]() |
![]() |
![]() |
![]() |
#652 | |
Big Clucker
![]() ![]() Join Date: Dec 2015
Posts: 65
Reputation: 9
|
![]() Quote:
|
|
![]() |
![]() |
![]() |
#653 |
Gangsta
![]() ![]() ![]() ![]() Join Date: Sep 2009
Location: recursion
Posts: 652
Reputation: 34
|
![]()
поправил (--i -> i--)
|
![]() |
![]() |
![]() |
#654 |
Gangsta
![]() ![]() ![]() ![]() Join Date: Mar 2013
Location: Gomel, Belarus
Posts: 738
Reputation: 310
|
![]()
Не знаю, выкладывались ли здесь до этого подобные функции (скорее всего да), но вот мой вариант функции fwrite, которая может корректно записывать в файл строку с русскими символами (в режиме ASCII). Синтаксис абсолютно тот-же, что и в обычной fwrite
Code:
stock fwriteASCII(File:fhandle, const string[]) { if(!fhandle) return 0; new stringlen = strlen(string); for(new i; i < stringlen; i++) fputchar(fhandle, string[i], false); return stringlen; } Code:
new File:hfile = fopen("random.txt"); if(hfile) { fwriteASCII(hfile, "Я просто текст"); fclose(hfile); } Code:
#if defined _ALS_fwrite #undef fwrite #else #define _ALS_fwrite #endif #define fwrite fwriteASCII |
![]() |
![]() |
![]() |
#655 |
High-roller
![]() ![]() ![]() ![]() ![]() Join Date: May 2008
Location: Russia, Orenburg Money: GTA$ 999,999,999
Posts: 3,146
Reputation: 140
|
![]()
Все давно на fputchar'ах сделали...
|
![]() |
![]() |
![]() |
#656 | |
Banned
![]() Join Date: Sep 2008
Location: Russia
Posts: 1,447
Reputation: 356
|
![]() Quote:
|
|
![]() |
![]() |
![]() |
#657 |
Gangsta
![]() ![]() ![]() ![]() Join Date: Mar 2013
Location: Gomel, Belarus
Posts: 738
Reputation: 310
|
![]()
В fixes я, кстати, этого исправления не увидел. Видел только действительно старую тему с неким подобием, но там в параметрах функции указывалось лишь название файла и строка, которую нужно туда записать. Понятное дело, использовать каждый раз такую функцию с постоянным открытием и закрытием файла не есть хорошо, потому и сделал аналогом обычного fwrite.
|
![]() |
![]() |
![]() |
#658 |
Banned
![]() Join Date: Sep 2008
Location: Russia
Posts: 1,447
Reputation: 356
|
![]()
Да ему там делать нечего, я бы это даже багом не назвал - это скорее особенность. Функцию fwriteASCII лучше вызывать только для строк, в которых может находиться кириллица, а не для всех сразу. Не многим нужно обычный вызов fwrite заменять на множественные вызовы fputchar ради читаемых файлов (напомню, что fread прекрасно справляется со строками с кириллицей, сохранёнными с помощью fwrite).
|
![]() |
![]() |
![]() |
#659 |
High-roller
![]() ![]() ![]() ![]() ![]() Join Date: Mar 2012
Posts: 1,320
Reputation: 86
|
![]()
Несколько макросов, позволяющих сделать гораздо быстрее то, что обычно делается циклом.
PHP Code:
Last edited by stabker; 12/11/2017 at 01:43 PM. |
![]() |
![]() |
![]() |
#660 |
Gangsta
![]() ![]() ![]() ![]() Join Date: Mar 2013
Location: Gomel, Belarus
Posts: 738
Reputation: 310
|
![]()
Недавно кто-то спрашивал, как можно сделать функцию, в которой передаваемое в аргумент значение со знаком + или - позволяло бы сразу отнимать или прибавлять некой другой переменной это значение. И вот как-то случайно вспомнил сейчас об этом, найдя один интересный макрос (на примере PVar'ов):
PHP Code:
PHP Code:
|
![]() |
![]() |
![]() |
Thread Tools | |
Display Modes | |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
SA-MP для Anderius, Criminal Russia, United и Gostown6 | dimonml | Русский/Russian | 1004 | 09/06/2018 02:05 PM |
Проблема с прорисовкой некоторых объект& | ONIXS | Русский/Russian | 29 | 23/11/2011 05:24 PM |
Символы, буковки, горячая замена | ^Woozie^ | Русский/Russian | 23 | 27/02/2010 02:25 PM |