以下のコードでは、配列が関数の引数として渡されたときに配列の最初の要素へのポインタになるので、なぜそれを逆参照できないのでしょうか?なぜ配列名で間接演算子を使用できないのですか?
#include <stdio.h>
int main(void) {
char s[] = "radha";
int a[2] = {0,1};
printf("%s ", *s);
printf("%d", *a);
return 0;
}
私は上記のコードのためのセグメンテーションフォールトを取得しています、私が使用している場合、[0]、それは内部的に*(A + 0)として変換され、ここに理由何なので、何が単純で問題です* aまたは* Sをして、明確にしてください。
'のprintf( "%sの" * S);' - > 'のprintf( "%sの"、S);' –
'* S' =='のS [0] '== '」 r''。 'printf("%s "、s);'または 'printf("%c "、* s);' – BLUEPIXY
ひどい質問のタイトルです。 –