
ポインタ変数で宣言された3つ以上の文字列を連結したいのです。
そこで
char *str1 = "Hello,";
char *str2 = "Mr.";
char *str3 = "Brown.";
char msg[100];
strcat(msg,strcat(str1,strcat(str2,str3)));
printf(msg);
としたがやっぱり駄目でした。
strcat(str2,str3)からして駄目なんだとはなんとなくわかるのですが
どうしたら解決できるのかわかりません。
結果的には
printf(msg);
->Hello,Mr.Brown.
としたいのです。解決案をご教授いただけないでしょうか。
お願いいたします。
No.1ベストアンサー
- 回答日時:
それを書くなら、
strcpy(msg, str1);
strcat(msg, str2);
strcat(msg, str3);
または、
strcat(strcat(strcpy(msg, str1), str2), str3);
では。
(puts等でなく)printf使うなら、
printf("%s%s%s, str1, str2, str3);
でも大差ない気がしますが。
# オーバフローにはくれぐれもご注意を。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CStringからchar*への型変換に...
-
char*を初期化したいのですが
-
new charとnew char[N]の違いは?
-
char 文字列型 の表現範囲が-12...
-
std::stringクラスのc_str()で...
-
C言語にて構造体のメンバがNULL...
-
char型にint型の数値を代入する。
-
C言語のプログラムについてです
-
ポインタを使って回文かどうか...
-
SetWindowTextについて。
-
文字列内の数字削除
-
VBAのプログラムで、DIAG = 1# ...
-
C言語 配列の長さの上限
-
init関数の意味
-
c言語のポインタへの文字列入力...
-
C#で構造体の配列を持った構造...
-
プログラムによく出てくるst...
-
System.IO.Directory.GetFiles...
-
Integer変数をカラにしたいので...
-
win32APIのHeapAlloc()の使い方...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CStringからchar*への型変換に...
-
char*を初期化したいのですが
-
C言語のintとcharの違いってな...
-
C言語にて構造体のメンバがNULL...
-
fstream型オブジェクトを関数の...
-
char型にint型の数値を代入する。
-
char 文字列型 の表現範囲が-12...
-
文字列を比較するプログラムな...
-
ostringstreamではまりました
-
文字列内の数字削除
-
C言語のプログラムについてです
-
csvファイルをfscanfで読み込む...
-
エクセルのMID関数は、C言語では?
-
ポインタを使って回文かどうか...
-
C言語でポインターで詰まってい...
-
文字列の途中から途中までを抽出
-
new charとnew char[N]の違いは?
-
文字列str内の全ての数字を...
-
以下のようなプログラムを書い...
-
char AA[]{"全角文字"};から"全...
おすすめ情報