5 / 5 / 1
Регистрация: 25.10.2013
Сообщений: 230
|
|
1 | |
Безопасность передачи string.c_str() в качестве параметра16.03.2016, 13:28. Показов 1989. Ответов 2
Метки нет (Все метки)
Есть некоторая функция которая принимает в себя си-строку, модифицирует ее (в т.ч. может увеличить количество данных). Безопасно ли передавать в подобную функцию string.c_str() без контроля выделенной памяти под string или же надо работать аналогично си строке резервируя память и следя за переполнением?
0
|
16.03.2016, 13:28 | |
Ответы с готовыми решениями:
2
способы передачи объекта в функцию в качестве параметра Ошибка компиляции при попытке передачи переменной ссылочного типа в качестве параметра При передачи указателя на объект vector в качестве параметра при выполнении программы происходит ошибк сегметирования string, c_str |
2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
|
|
16.03.2016, 13:38 | 2 |
DarkMasterW, не безопастно.
Функция, void foo(char* str) с учётом того, что может изменится или нет размерность str - это так глупо
0
|
88 / 88 / 80
Регистрация: 25.08.2013
Сообщений: 337
|
||||||
16.03.2016, 13:44 | 3 | |||||
Сообщение было отмечено DarkMasterW как решение
Решение
Да и не сможет изменить, и по значению нельзя передать))). string::c_str() возвращает указатель на константу.
0
|
16.03.2016, 13:44 | |
16.03.2016, 13:44 | |
Помогаю со студенческими работами здесь
3
Буффер из std::string c_str() String в char и c_str(): обмен содержимого буферов Искать файл, который задан в качестве первого параметра, в каталогах, заданных в качестве остальных параметров Пакетный файл, который будет осуществлять поиск файла, заданного в качестве первого параметра в каталогах, заданных в качестве остальных параметров Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |