ホームページ >バックエンド開発 >C++ >C で複数の文字列を 1 行に連結するにはどうすればよいですか?

C で複数の文字列を 1 行に連結するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-08 02:05:02230ブラウズ

How Can I Concatenate Multiple Strings on a Single Line in C  ?

C で単一行に複数の文字列を連結する : 総合ガイド

エレガントな構文で知られる C# では、さまざまな文字列を連結できます。データ型を 1 行で入力します。この機能は、簡潔で読みやすいコードベースを提供します。ただし、C には、文字列連結のための同様のすぐに使用できるメカニズムがありません。

課題を理解する

C では、複数の文字列を ' で連結しようとします。 ' 演算子を使用するとエラーが発生します。次のコード スニペットはこの問題を示しています。

string s;
s += "Hello world, " + "nice to see you, " + "or not.";

C は ' ' 演算子を文字列の追加として解釈し、連結ごとに個別の行が必要になるため、このコードはエラーをトリガーします。

効果的なソリューションの採用

幸いなことに、C では sstream ライブラリを使用したソリューションが提供されています。このライブラリを統合することにより、開発者は stringstream クラスを利用して文字列をシームレスに連結できます。次のコード スニペットは、このアプローチを示しています。

#include <sstream>
#include <string>

std::stringstream ss;
ss << "Hello, world, " << myInt << niceToSeeYouString;
std::string s = ss.str();

このコード内:

  1. ss という名前の stringstream オブジェクトが作成されます。
  2. <<演算子は、文字列と変数を ss オブジェクトに追加するために使用されます。
  3. 最後に、str() メソッドは、連結された文字列を s 変数に抽出します。

代替案の探索Option

有名な C 専門家である Herb Sutter が、「Guru Of The Week」シリーズで「The String Formatters of Manor Farm」というタイトルの文字列フォーマッタに関する有益な記事の概要を説明しています。このリソースは、C での文字列連結の代替アプローチに関する貴重な洞察を提供します。

以上がC で複数の文字列を 1 行に連結するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。