powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Решение ряда задач.
25 сообщений из 100, страница 2 из 4
Решение ряда задач.
    #38816278
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryМы в любом случае перебираем каждый байтЭто пока вы не начали работать с кодировками. Тогда реверс байт будет простым и тривиальным занятием.
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816283
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovЧтобы выставить флаг, придётся "попарно сверить две половинки строки". И даже тогда может не повезти и копировать всё равно придётся.
Джава знает ответ на этот вопрос :)
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816286
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyДжава знает ответ на этот вопрос :)Нет, не знает.
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816290
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я когда-то приводил пример с транспонированием матрицы.
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816296
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И что?
Весь APL был сделан на отложенных вычислениях, но работало это только потому, что, как правило, требовалась только часть матрицы.
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816299
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я Сашику вобщем-то писал.
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816332
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovЧтобы выставить флаг, придётся "попарно сверить две половинки строки". И даже тогда может не повезти и копировать всё равно придётся.
Погодите, причем здесь сравнение половинок?
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816349
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы про разные флаги говорите наверное. Я их 2 штуки предлагал.
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816381
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже, что - да, про разные.
Но "Swapped=False" - вообще хня.
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816393
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Иммутабельность, мать ее так... Она заложена во все строковые
объекты .Net/Java. Я просто предложил свой взгляд на задачу реверса в С/С++.

А так - всё чики-пики. Можно и кувыркать символы в мемори.
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816407
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonИммутабельность, мать ее так... Она заложена во все строковые объекты .Net/Java.Не знаю как в .NET, но в Java неизменяем только java.lang.String. А StringBuilder/StringBuffer - вполне переменные.Я просто предложил свой взгляд на задачу реверса в С/С++.Отложенный реверс - изначально задница: нет места отложенным вычислениям.
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816477
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov, StringBuffer, StringBuilder не являются строковыми переменными.
Это хелперы которые помогают сформировать всё тот-же самый immutable String на выходе.
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816521
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЭто хелперы которые помогают сформировать всё тот-же самый immutable String на выходе.Если String нужен, да, могут быть приведены к строковому типу. А если не нужен:
Код: java
1.
2.
3.
4.
5.
StringBuilder msg = new StringBuilder(25);
msg.append("Раз, ")
   .append("два: ")
   .append(1).append(", ")
   .append(2);

?
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816528
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я слышу вопрос - "А не заменить-ли все String на StringBuilder" ?
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816554
petalvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov правильно упомянул про кодировки. Я тоже о них сразу подумал.
Поменять однобайтные символы просто. А вот если будут многобайтные кодировки, UTF8 или UTF16 с суррогатными парами, то...
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816578
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Плавающие кодировки существуют обычно в файлах. В String-объектах это обычно UTF-16.
Индекс вычислется чутка легше чем в утф-8.
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816593
petalvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

да, но у автора голый Си.
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816595
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что для Си не существует поддержки кодировок? В библиотеках хотя-б...
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816599
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petalvikПоменять однобайтные символы просто. А вот если будут многобайтные кодировки, UTF8 или UTF16 с суррогатными парами, то...
ничего страшного.
даже если на месте менять.
и без всяких библиотек
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816601
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда нужно 3 реверса. В скобках замечу что нет однозначных правил по детектированию чё внутри байтэррея.

Код: plaintext
1.
2.
3.
4.
5.
reverseBytes(...);

reverseUtf8Bytes(...);

reversUtf-16bytes(...);
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816664
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petalvikПоменять однобайтные символы просто. А вот если будут многобайтные кодировки, UTF8 или UTF16 с суррогатными парами, то...Да хоть UTF32. Составные символы никто не отменял.
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816837
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovSashaMercuryМы в любом случае перебираем каждый байтЭто пока вы не начали работать с кодировками. Тогда реверс байт будет простым и тривиальным занятием.

не говорю что это сложное занятие. Просто хочу решать эту задачу по-другому
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816841
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Придумал, так можно. А есть такой раздел в программировании исследующий именно методы чтения памяти через какие-либо функции, а не дублирование в том формате, что нам нужен.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
int my_printf(FILE* out, const char* s, size_t p, int(*func)(const char* s, size_t p, int i))
{
	for (int i = 0; i < p; ++i)
		putc(func(s,p,i), out);

	return 0;
}

//function is defined on i in[0,p)
//reverse(x)
int reverse(const char* s, size_t p, int x)
{
	return *(s + p - 1 - x);
}




int main()
{
	char s[] = "Hello, Embarcadero";
	printf("before: %s\n", s);
	size_t p = strlen(s);
	my_printf(stdout, s, p, (*reverse));
	printf("\n");
	return 0;
}
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816843
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хм. Пришел к тому, что мне нужно реализовать тип данных который включает в себя строку, и способ её чтения
...
Рейтинг: 0 / 0
Решение ряда задач.
    #38816848
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryХм. Пришел к тому, что мне нужно реализовать тип данных который включает в себя строку, и способ её чтения

спецификацию юникода почитай - там много удивительного
...
Рейтинг: 0 / 0
25 сообщений из 100, страница 2 из 4
Форумы / C++ [игнор отключен] [закрыт для гостей] / Решение ряда задач.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]