Форум программистов, компьютерный форум CyberForum.ru

Напишите свои аналоги функций strlen(), strcpy(), strcmp() и сравните с библиотечными. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Есть ли C++ нативный способ быстро обнулить массив (аналог bzero)? + ещё 2 вопроса http://www.cyberforum.ru/cpp-beginners/thread38637.html
Второй вопрос - если конструктор обнаружил условия, препятствующие созданию объекта, есть ли способ "не создавать" объект и не использовать потом дестуктор? Третий - стоит ли использовать динамические переменны внутри локальной области видимости(создать и удалить перед выходом из этой области) Спасибо
C++ функция разбивает файл на биты.... Написать функцию,разбивающую файл на биты и записывающую последовательно эти биты с интервалом в 24 байт в другой файл. В случае нехватки длины 2-го файла вывести предупреждение сообщение и прекратить работу. http://www.cyberforum.ru/cpp-beginners/thread38636.html
Рассортировать строки матрицы по возрастанию первых элементов строк C++
8. Создать нижний относительно побочной диагонали треугольник динамической квадратной матрицы. Рассортировать строки матрицы по возрастанию первых элементов строк проблема в том, что матрица триугольная и никак строки не поменяешь местами пишет ошибку. значет надо менять адреса а как? вот мой код int main () { int n; cout<<"Enter size"<<endl; cin>>n; int **arrow=new int*;
C++ Сохранение изображения
Моя программа похожа на PAINT только под DOS в Borland C 3.1. Как мне сохранять рисунки которые я рисую?
C++ Изобразить движение по спирали http://www.cyberforum.ru/cpp-beginners/thread38629.html
Помогите зделать движение по спирали(на рисунку). Я так понимаю надо двигатса по елипсу и смещать центр, но не знаю как это зделать.
C++ Двумерные массивы (+символьные) Вот 5 задач... необходимо помочь братишке... сам я в С++ не особо силен... Сильно прошу вас помочь мне... За оказанную услугу готов оказать услугу написания сайта) очень жду помощи... 1) Дан двумерный массив целых чисел. а) Сформировать одномерный массив, каждый элемент которого ра- вен наибольшему по модулю элементу соответствующего столбца двумерного массива. б) Сформировать... подробнее

Показать сообщение отдельно
Evg
Эксперт CАвтор FAQ
17545 / 5783 / 370
Регистрация: 30.03.2009
Сообщений: 15,930
Записей в блоге: 26
06.06.2009, 18:10     Напишите свои аналоги функций strlen(), strcpy(), strcmp() и сравните с библиотечными.
Цитата Сообщение от #pragma Посмотреть сообщение
я и спрашиваю,где конкретно в библиотеках
Нигде. У тебя они только в бинарном виде: т.е. в комплекте с компилятором у тебя идут бинарники и инклюды к ним. Разработчики исходники библиотек не поставляют

Добавлено через 1 минуту 19 секунд
Вот одна из реализаций strlen'а: http://www.openbsd.org/cgi-bin/cvswe...e=text%2Fplain
Она быстрее, чем твоя, потому как в цикле идёт только одна инкрементация, а у тебя две

Добавлено через 4 минуты 18 секунд
Вот ещё одна реализация, оптимизированная в первую очередь под длинные строки
http://tsunanet.net/~tsuna/strlen.c.html
Работа идёт long'ами (т.е. почти вся строка проматывается кусками размером с long (для 32-битных систем по 4 байта, для 64-битных - по 8). Ещё одна причина, почему этот код работает быстро - из-за того, что обращения в память по слову на некоторых арихитектурах работают лучше, чем обращения по байту из-за особенностей реализации кэша

Добавлено через 3 минуты 14 секунд
Кстати, по документации strcpy возвращает dst, а не void, как у тебя
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru