char *(*s)[ ];우선순위로 (*s)를 먼저 읽어보세요. 포인터와 배열을 변환할 수 있으므로 (*s)는 s[]로 변환되므로 위 수식은 char *s[][]; 로 변환할 수 있으며 먼저 s[][]가 무엇인지 판단합니다. 二维数组, 앞에 추가합니다. "" 기호는 각 요소가 char(예: 문자열)임을 나타냅니다.
한 가지 더, 안에 괄호가 없으면 다음과 같습니다. char **s[] 그러면 달라집니다. 우선순위에 따라 s는 먼저 s[]로 표현되는 아래 첨자 문자, 즉 一维数组과 결합된 다음, 배열의 요소가 다음과 같음을 나타내는 이전 두 개의 "*" 기호와 결합됩니다. 포인터에 대한 포인터.
char *(*s)[ ];
우선순위로(*s)
를 먼저 읽어보세요. 포인터와 배열을 변환할 수 있으므로(*s)
는s[]
로 변환되므로 위 수식은char *s[][];
로 변환할 수 있으며 먼저
s[][]
가 무엇인지 판단합니다.二维数组
, 앞에 추가합니다. "" 기호는 각 요소가 char(예: 문자열)임을 나타냅니다.한 가지 더, 안에 괄호가 없으면 다음과 같습니다.
char **s[]
그러면 달라집니다. 우선순위에 따라 s는 먼저s[]
로 표현되는 아래 첨자 문자, 즉一维数组
과 결합된 다음, 배열의 요소가 다음과 같음을 나타내는 이전 두 개의 "*" 기호와 결합됩니다. 포인터에 대한 포인터.s는 char 배열에 대한 포인터이거나 char*
에 대한 포인터입니다.@大达가족이 답변을 아주 잘 해주셨네요. "C 전문가 프로그래밍"에서 C의 설명을 설명하는 장을 마련했습니다. 이전에 "C 전문가 프로그래밍 노트"를 읽으면서 해당 내용을 읽어보실 수 있습니다. 1-3)