bi'şey hiçbir örneği, ancak görsel stüdyo 2015 bana aşağıdaki hata veriyor.C++: cin.getline - aşırı yük fonksiyonu bir .txt dosyasına metin satırı yazmaya çalışıyorum
Önem Kod Açıklama Proje Dosyası Satır Giderme Devlet Hatası (aktif) aşırı fonksiyon "std :: basic_istream < _Elem, _Traits> :: getline'ın hiçbir örneği [_Elem = karakter, _Traits = std ile :: char_traits] 16
ve
Önem Kod Açıklama Proje Dosyası Satır Giderme Devlet \ Studying.cpp incelenmesi \ incelenmesi \ Klaas \ Belgeler \ Projects Visual Studio 2015 \ \ \ Kullanıcılar: "c incelenmesi argüman listesi maçları Hata C2664 'std :: basic_istream> & std :: basic_istream> :: get (_Elem *, std :: streamsize, _Elem)': 'char *' Studying1 c 'std :: string' dan argüman 1 dönüştürmek olamaz: \ kullanıcılar \ klaas \ belgeler görsel stüdyo 2015 \ projeleri \ \ studying1 \ studying1 studying1.cpp \ 16
Benim kaynak kodu: böyle
dahil olarak cevaplar birden çok arama yapılan ve bulduk#include <iostream>
#include "stdafx.h"
#include <fstream>
#include <string>
using namespace std;
int main()
{
ofstream myFile;
string myText;
myFile.open("sometext.txt");
cout << "Write text to save to file: ";
cin.ignore();
cin.getline(myText, sizeof(myText));
myFile << myText;
myFile.close();
return 0;
}
cin.ignore();
cin.getline
üstünde 10, ama sadece çalışmak ve gerçekten hata ne anlama geldiğini anlamıyorum ve bu ı bir dize dönüştürmek için çalışıyorum sanıyor neden ben görmüyorum alamayan char Doğru işlevini kullanmıyorsanız
o karakter *, dize – Incomputable
'sizeof (myText)' yapmaz bunu düşünmek beklediğini Ne: Her yerde belirtildiği gibi
, bu
std::getline
işlevi kullanmak daha iyidir yapar. Daha çok 'myText.size()' kullanın. –Gördüm, ama bir dize beklemek nasıl emin değilim, ve ben de ilk etapta bir char * beklemek gerçekten emin değilim :( –