우선 문자열 배열 선언이 잘못되었습니다.GCC에서이 다음과 같은 오류를 제공합니다 :
error: excess elements in char array initializer
error: (near initialization for ‘arrays’)
는 50 개 요소 (각 요소는 문자입니다) 그리고 당신이 이 문자열을 초기화하는과 하나 문자 문자열을 선언 때문이다.
이제 당신은 당신이 당신의 배열이 포인터가 말하는
char *arrays[2] = {"hello", "world"};
로 변경 경우 : "안녕하세요"문자열에 하나의 포인터 점, 그리고 문자열 "세계"에 다른 포인터. 당신이 그들이 가리키는 값 인쇄하여 사실입니다 볼 수 있습니다 :이 대신 수의 문자가 인덱스에 지금 당신이 원하는 경우에
array content: hello - world
를 인쇄합니다
printf("array content: %s - %s\n", arrays[0], arrays[1]);
을, 나는 가장 간단한 생각 접근법은 원하는 문자열에 문자 키를 할당 할 수있는지도를 만드는 것입니다. hmjd가 제공 한 답변을 참조하십시오 (은 stdlib.h
으로 표시되므로 소스 코드에이 헤더를 포함해야합니다).
귀하의 의심이나 어려움을 가지고 계시다면, 우리가 도울 수 있다고 확신합니다.
무엇이 당신의 질문입니까? 질문은 매우 불분명합니다 ... 무엇을 알고 싶습니까 – Anirudha
당신은 Java와 같은지도를 사용할 수 있으며 값으로 정수를 얻을 수 있습니다. – logoff
그것은'char'와'char * '사이의 매핑입니까? – hmjd