синтаксис с++

C++ Visual studio c++ syntax

string s;
cin>>s.c_str();

Ошибка 5 error C2679: бинарный '>>': не найден оператор, принимающий правый операнд типа 'const char *' (или приемлемое преобразование отсутствует) c:\Documents and Settings\cron939\Мои документы\Visual Studio 2008\Projects\long\long\long.cpp 181



что не так?

Примечание:
Ошибка 5 error C2679: бинарный '>>': не найден оператор, принимающий правый операнд типа 'std::string' (или приемлемое преобразование отсутствует) c:\Documents and Settings\cron939\Мои документы\Visual Studio 2008\Projects\long\long\long.cpp 181
Ответы:
не cin >> s.c_str() а просто cin >> s
c_str() возвращает константный указатель на char, а operator>> с таким типом данных  не умеет работать (что вы и видели)
Сделай так
#include<iostream>
#include<string>
using  namespace std;
int main()
{
string s;
cin>>(char *)s.c_str();
cout<<endl<<(char *)s.c_str()<<endl;
return 0;
}
Но это извращения.
2 playa-hater:


15 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.