char name[]="samina",*p=name;
while (*p)
cout<<*p++;
cout<<endl<<p-name;
私は文字列name
とポインタp
を持っています。 whileループは、文字列の各文字へのポインタを更新し、その文字列を表示します。C++:文字列へのポインタ
ただし、式p-name
は常に文字列の長さを表示します。私によれば、ループの末尾でp
は'\0'
を指し、名前のポイントは 's'なので、出力は文字 's'のASCIIコードを与えるべきではないでしょうか?
なぜ 's 'のasciiコードを与えるのだろうか? – wRAR
ASCIIコードの場合は、 'name [0] -p [0]' –
を使用してください。 –