「char* p」と「char *p」の違いを教えてください。

A 回答 (3件)

同じ意味です。


ただ、
char* p, q;
と書いた場合、一見char*型のpとqを定義しているように見えるかもしれません。
しかし、実際はchar*型のpとchar型のqを定義しています。
意図とは違うことが起きるかもしれません。

したがって、私は、型名の最後ではなく変数名の頭に*を付ける
書き方を採用しています。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます
>char* p, q;
>と書いた場合、一見char*型のpとqを定義しているように見えるかもしれません。
>しかし、実際はchar*型のpとchar型のqを定義しています。
参考になりました

お礼日時:2008/02/09 20:50

違いはありません。


コンパイラはどちらも同じ意味として理解します。

GNU Cでのケースになりますがコンパイルしたオブジェクトファイルを逆アセンブルすると「int* p」と「int *p」は同じ内容が出力されます。
従って違いはないと判断できます。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます

お礼日時:2008/02/09 20:49

意味は同じです。

でも、見た目が違うので、プログラマの信ずるところでどちらかに決めるようです。たぶん書き方は混ぜないほうがいいと思えます。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます

お礼日時:2008/02/09 20:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

今、見られている記事はコレ!

おしトピ編集部からのゆる~い質問を出題中

お題をもっとみる


このカテゴリの人気Q&Aランキング

おすすめ情報

カテゴリ