|
0 / 0 / 0
Регистрация: 12.05.2011
Сообщений: 17
|
||||||
strcpy - как быть?19.09.2011, 22:11. Показов 9286. Ответов 36
Метки нет (Все метки)
Всем Доброго времени суток.
Возник вопрос. В процессе работы над заданием, столкнулся с проблемой, которую не хватает сил обойти. Вот Код программы:
0
|
||||||
| 19.09.2011, 22:11 | |
|
Ответы с готовыми решениями:
36
Функция strcpy () - строка должна быть пустой? Как должна быть организована сеть офиса? Что должно быть настроено обязательно, а чего быть не должно? Как работает strcpy(), где ошибка |
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||||||||||||
| 21.09.2011, 15:34 | ||||||||||||
|
При передаче же статического массива в функцию strcpy происходит неявное преобразование к указателю на char* (т.е., по сути char dest[80] и char* dest - разные вещи). В качестве примера можешь посмотреть результат работы следующей программы:
В C++ есть хитрый трюк, который позволяет с помощью шаблонов узнать размер статического массива:
0
|
||||||||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 21.09.2011, 15:35 | |
|
0
|
|
|
725 / 224 / 73
Регистрация: 01.03.2011
Сообщений: 654
|
||
| 21.09.2011, 15:50 | ||
|
Я не вижу причин мешающих передавать в функцию копирования строк размер буфера...
0
|
||
|
3606 / 2746 / 356
Регистрация: 11.03.2009
Сообщений: 6,318
|
|
| 21.09.2011, 15:50 | |
|
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|||
| 21.09.2011, 15:57 | |||
|
0
|
|||
|
725 / 224 / 73
Регистрация: 01.03.2011
Сообщений: 654
|
||
| 21.09.2011, 16:05 | ||
|
Меня интересует, что может помешать писать strlcpy() ну или strncpy() на худой конец, вместо strcpy().
0
|
||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|||||||
| 21.09.2011, 16:14 | |||||||
|
Ну, а в вырожденных случаях может сгодиться и strcpy:
0
|
|||||||
|
3606 / 2746 / 356
Регистрация: 11.03.2009
Сообщений: 6,318
|
|
| 21.09.2011, 16:24 | |
|
1
|
|
|
725 / 224 / 73
Регистрация: 01.03.2011
Сообщений: 654
|
|
| 21.09.2011, 16:27 | |
|
0
|
|
|
3606 / 2746 / 356
Регистрация: 11.03.2009
Сообщений: 6,318
|
|
| 21.09.2011, 16:30 | |
|
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||
| 21.09.2011, 16:32 | ||
|
0
|
||
|
725 / 224 / 73
Регистрация: 01.03.2011
Сообщений: 654
|
|
| 21.09.2011, 16:42 | |
|
Ну я как бы откомментировал конкретный код, а не сферический)
0
|
|
|
111 / 112 / 18
Регистрация: 11.03.2011
Сообщений: 421
|
|
| 21.09.2011, 17:55 | |
|
ну раз уже развели тут такую дискуссию, добавлю от себя к вышесказанному:
strcpy() опирается на признак окончания строки (чем есть 0, в конце символьного массива), и если его в массиве не присутствует, то она отрабатывает до "посинения", чем является ошибка чтения памяти, с адресом, как правило, вне пределов адресного пространства программы.
0
|
|
|
Клюг
7677 / 3192 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
|
|||
| 21.09.2011, 18:14 | |||
1
|
|||
|
|
||
| 21.09.2011, 19:20 | ||
|
0
|
||
|
Клюг
7677 / 3192 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
|
|
| 21.09.2011, 19:51 | |
|
Kastaneda, Waterloo всё-таки семейство компиляторов, да ещё и с внешними кодогенераторами, так что возможно всякое. Кстати есть у них и клоны МСовскких компайлера и линкера...
0
|
|
| 21.09.2011, 19:51 | |
|
Быть любимым - это больше, чем быть богатым, потому что быть любимым означает быть счастливым?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы.
Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
|
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
|
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version
1. 2003 - 06 - Designing Virtual Worlds (1st Edition)
Автор: Richard A. Bartle | Объем: 768 стр.
Ссылки: Amazon
. . .
|
Родители токсичные абьюзеры по отношению к своим детям ругают их оскорбляют не любят
zorxor 08.11.2026
Жить в атмосфере постоянных оскорблений, критики и холодности со стороны родителей — это тяжелое и болезненное испытание, которое оставляет глубокие эмоциональные раны. Токсичное и абьюзивное. . .
|
|
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы.
Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
|
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version
Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
|
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров".
Задача:
Запрет инициалов.
Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
|
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . .
Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
|