Форум программистов «Весельчак У»
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
Начало
Наши сайты
Галерея
Весельчак У
Наша Вики
Хранилище
Проекты
Правила
Правила форума
Правила русского языка
Помощь
Поиск
Календарь
Почта
Войти
Регистрация
Форум программистов «Весельчак У»
>
Программирование
>
C/C++
(Модератор:
Вад
) > Тема:
a.c_str()
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: a.c_str() (Прочитано 7191 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ZWYHB
Участник
Offline
a.c_str()
«
:
20-12-2009 17:25 »
int Process::action(string a)
{
system(a.c_str());
return 0;
}
что происходит в этом куске?
и для чего вообще используется a.c_str()?
Записан
Вад
Модератор
Offline
Пол:
Re: a.c_str()
«
Ответ #1 :
20-12-2009 17:40 »
Ну, если system - это функция из cstdlib, то происходит попытка выполнить системную команду. c_str() - метод std::string, возвращающий содержимое в виде C-строки (то есть, указатель на нуль-терминированную строку). Это нужно, поскольку функция system требует const char* в качестве входного параметра, а автоматически string к const char* не приводится.
Записан
ZWYHB
Участник
Offline
Re: a.c_str()
«
Ответ #2 :
20-12-2009 17:48 »
понятно. Спасибо!
Записан
lapulya
Молодой специалист
Offline
Re: a.c_str()
«
Ответ #3 :
21-12-2009 16:19 »
В дополнение к тому, что сказал Вад, я бы добавил, что c_str() возвращает поинтер на
константную
строку (это достаточно важно).
Записан
С уважением Lapulya
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Форум программистов «Весельчак У»
>
Программирование
>
C/C++
(Модератор:
Вад
) > Тема:
a.c_str()
Загружается...