ページ 11

string型への変更

Posted: 2013年9月17日(火) 08:24
by わんそ
こんにちは。質問があります。

char型の配列内の値を、string型の変数ポインタに代入したいのですが、その方法が分かりません。
どのようにすれば良いか、教えて頂けないでしょうか。

以下、想定しているソースコードです。

コード:

Func(string * str){
 char a[100] = "ss";
   ・・・
 /* char型の配列(a)の中の値を、引数のstring str にstring型に変換して、代入したい */ 
}
よろしくお願いいたします。

Re: string型への変更

Posted: 2013年9月17日(火) 08:31
by みけCAT
C++のstd::stringでしたら、直感的に代入できます。

コード:

#include <string>
#include <cstdio>

using namespace std;

void Func(string * str){
 char a[100] = "ss";
 //  ・・・
 /* char型の配列(a)の中の値を、引数のstring str にstring型に変換して、代入したい */
 (*str)=a;
}

int main(void) {
	string test("failed");
	Func(&test);
	puts(test.c_str());
	return 0;
}
http://ideone.com/PwlEa8