01/10/2018, 12:01

Bị lỗi khi tìm hiểu về String trong C++: "invalid conversion from const char to char"

e mới tìm hiểu về string, mong mọi người giúp em ạ, e cảm ơn.
khi viết như này thì lỗi “invalid conversion from const char to char”

#include<iostream>
#include<string.h>
using namespace std;
int main(){
	string s1="", s2="";
	cin>>s1;
	for(int i=0; i<4; i++){
		s2[i]='0';
	}
	string s3="";
	s3=s1+s2;
	for(int i=0; i<s3.size(); i++){
		cout<<s3[i]<<" "<<endl;
	}

	return 0;
}
HK boy viết 14:08 ngày 01/10/2018

Ở đầu tiên bạn mới gán s2 = "", nhưng đoạn

for(int i=0; i<4; i++){
	s2[i]='0';
}

bạn đã gán char vào string[] rồi.

holoshit viết 14:15 ngày 01/10/2018

e định thêm số 0 đê cho 2 string có độ dài bằng nhau, sau đó cộng trừ nhân chia số nguyên lớn
làm sao để thêm đc ạ

HK boy viết 14:05 ngày 01/10/2018
for (...) s2 += '0'; // thêm '0' vào cuối string
for (...) s2 = '0' + s2; // thêm '0' vào đầu string
holoshit viết 14:04 ngày 01/10/2018

ô =)) chỉ có vậy thôi ạ
em cảm ơn ^^

Dark.Hades viết 14:13 ngày 01/10/2018

Cộng string và char không qua ép kiểu là un-safe rồi.
Cứ dùng hẳn dấu " " ấy, đừng nên dùng chung ' 'std::string

Bài liên quan
0