@gerokasu88 (あ あ)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

c++ 文字列出力する際、cout<<""<<文字列変数;の""をつける理由について

Q&A

Closed

文字列出力する際、cout<<""<<文字列変数;の""をつけなきゃいけない理由がわかりません。
""つけて文字列として認識してもらうんだろうな~とは思うんですけど、""文字列みたいに出力されないで、"文字列"って風にくっついて出力されるんですか?だとしたらどういう原理ですか?

0 likes

2Answer

""(ダブルクオーテーション2連続)というのは、「長さ0の文字列定数(リテラル)」という意味に解釈されると思われます。出力をしても何も変化がないと思われます。

" "(ダブルクオーテーション、スペース、ダブルクオーテーション)を使ってはいませんでしょうか? 例えば、文字列が2連続して出力すると区切りが分りにくい場合に、空白を入れる場合もあります。

ご確認いただければ幸いに存じます。

#include <iostream>
int main(){
        const char *_msg = "HELLO";
        std::cout << _msg << _msg;
        std::cout << std::endl;
        std::cout << "" << _msg << "" << _msg;
        std::cout << std::endl;
        std::cout << " " << _msg << " " << _msg;
        std::cout << std::endl;
        return 0;
}
kmtr@kmtr-virtual-machine:~$ ./a.out 
HELLOHELLO
HELLOHELLO
 HELLO HELLO
1Like

そうなんですか?初めて聞きました。私は単純にcout << hoge;にしています。

0Like

Your answer might help someone💌