2017-12-20 8 views
2

私はcharの懇願と終了で引用符を追加する必要があります。charに引用符を追加するにはどうすればよいですか?

char *Mychar = "hello"; 
printf("%c\n",Mychar[0]); 

私の結果はhで、私の望ましい結果は'h'です。

+0

'char'は、具体的には単一の文字である、あなたは「できます1つの 'char'の中に複数の文字がある場合、それは' char [] 'のためです。 ** print ** '' h''を行うだけでよい場合は、 'printf(" '%c' \ n "、Mychar [0]);'を実行すると、二重引用符で囲まれた一重引用符に注意してください。 – hnefatl

+1

コード**は '' ''に '' 'を追加できません。コード**は_string_または 'printf()'に '' 'を追加できます。 – chux

+1

あなたは 'char * Mychar =" hello "のようなものを探していますか? char quote_string [4] = {'\' '、* Mychar、' \ ''、 '\ 0'}; printf( "%s \ n"、quote_string); '' h '\ n'を出力しますか? – chux

答えて

3

フォーマット文字列に追加するだけです。単一引用符の場合は、あなたがそこにそれらを置くことができます。

printf("'%c'\n",Mychar[0]); 

二重引用符の場合は、あなたがそれらをエスケープする必要があります:

printf("\"%c\"\n",Mychar[0]); 
+0

ありがとうございます。 printfの前に追加することは可能ですか? char * Mychar = "hello"; char test = '\ n、Mychar [1]、' \ n ;? – user8978978

+0

@ user8978978: 'const char * Mychar =" 'hello' ";'または 'const char * Mychar =" \ "hello \" ";を使うことができます。 ( 'const'は準オプションです;文字列リテラルを確実に変更することはできません - 多くのシステムでプログラムがクラッシュするので、' const'はコンパイラにあなたが知っていることを知らせるために適切です) –

+0

私は必要です'h'を取得する – user8978978

関連する問題