|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
27.06.2017, 23:20 | #81 |
Форумчанин
Регистрация: 12.04.2017
Сообщений: 889
|
...тупым юзерам можно учить JS и прочие php, там все "как нада", глючит тоже не хуже люстры с наездником )
....а в С/С++ языках и Unix системах простая идеология - 1 программа (или 1 процедура) должна выполнять ровно 1 действие. Поэтому strcat копирует строку и ничего более. Комбайнеры сидят на виндовс и изобретают эксели и прочие Nero. |
27.06.2017, 23:37 | #82 | |
Пользователь
Регистрация: 18.06.2017
Сообщений: 55
|
Именно. И такой подход (подход, при котором слово "Боря" занимает 4 ячейки памяти) использован в Excel.
Цитата:
Код:
Тут у меня 2 вопроса: 1) длинновато 2) а есть ли необходимость в предложенном мной алгоритме с меньшим количеством итераций, или эффективнее будет просто пропустить 2 цикла сначала по a, а потом по b? |
|
27.06.2017, 23:50 | #83 | ||
Вредный кошак
Участник клуба
Регистрация: 14.10.2012
Сообщений: 1,159
|
Цитата:
Цитата:
Всё остальное зависит от конкретных условий. Да ладно? Просто всё остальное делается "под капотом". Либо завершающий ноль, либо хранение размера, либо и то и другое сразу. Ну и там врядли char используется для представления одного символа, т.к. один байт всего. А значит должны быть либо широкие символы и всё для работы с ними, либо мультибайтные строки и всё для работы с ними.))) |
||
28.06.2017, 00:05 | #84 |
Пользователь
Регистрация: 18.06.2017
Сообщений: 55
|
Само собой! Но допустим, что для меня неприемлем вариант:
Код:
Код:
а куда там расширять? Мне нужно просто c = a + b и больше ничего. Что? Вариант с 2 циклами? То есть, в моем алгоритме, теоретически, есть смысл? Тогда что в этом коде глуповатого? Моей задачей не является сделать аналог strcat, а, напротив, сделать функцию "всё в одном, тока не забудь потом удалить". |
28.06.2017, 00:08 | #85 | ||
Форумчанин
Регистрация: 12.04.2017
Сообщений: 889
|
Цитата:
Цитата:
Последний раз редактировалось alexzk; 28.06.2017 в 00:11. |
||
28.06.2017, 00:11 | #86 |
Пользователь
Регистрация: 18.06.2017
Сообщений: 55
|
|
28.06.2017, 00:14 | #87 |
Вредный кошак
Участник клуба
Регистрация: 14.10.2012
Сообщений: 1,159
|
Тогда какого дьявола он взял C? Пусть идет лесом туда, куда выше указали. Видимо, юзер настолько тупой, что не может инструмент себе выбрать. Ну или, как минимум, не понимает сути языка C. Таких, обычно, называют "неосиляторами", т.к. через какое-то время у них начинает бомбить, они идут в Java и дальше всем рассказывают какие они не тупые и как Java убивает C.
Всё банально, как всегда. В любом алгоритме есть смысл. Даже в медленной пузырьковой сортировке. На определенных данных она окажется быстрее остальных. Если C++, то лучше вернуть умный указатель из функций, а не переписывать старый. Причем, заметьте, плюсовики обязательно забудут сделать delete[]. Например, такая функция, будучи собранной в библиотеку оказывается совершенно непереносимой. Упс, неожиданно, да? Думаю, вполне можно сделать кейсы, где оно и на уровне исходников загнется. То бишь это сразу не универсальная функция и работать будет не везде. ))) Последний раз редактировалось Croessmah; 28.06.2017 в 00:17. |
28.06.2017, 00:14 | #88 |
Форумчанин
Регистрация: 12.04.2017
Сообщений: 889
|
|
28.06.2017, 00:18 | #89 |
Форумчанин
Регистрация: 12.04.2017
Сообщений: 889
|
....откройте исходники LUA. Там чистый С. И очень эффективны строки, настолько эффективны, что я 20мб файл, как строку за доли секунды вчитываю.
...и посмотрите на объем "великов" там и подводных камней в виде параметров конфигурации, правда оно все работает, даже на роутере. |
28.06.2017, 00:19 | #90 |
Вредный кошак
Участник клуба
Регистрация: 14.10.2012
Сообщений: 1,159
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
MMX сложить два числа | gansm | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 13 | 29.10.2010 05:16 |
как сложить два числа с плавающей точкой | forsy | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 19 | 29.03.2010 02:15 |
Макрос: сложить два числа | белочка | Microsoft Office Excel | 6 | 23.12.2009 22:02 |
Сложить два числа и вывести результат на экран | We1c0m3 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 2 | 23.05.2009 11:41 |
Сложить два числа | iwaniwan | Win Api | 3 | 23.04.2009 06:27 |