아래 코드는 전체 문자열을 인쇄합니다. 왜 그렇게하는지 혼란 스럽습니다.
char test[] = "jeff";
cout<<test<<endl;
출력은 "Jeff"입니다. 테스트는 포인터이고 포인터는 'J'인 첫 번째 요소이므로 char 배열 "test"의 값을 인쇄 할 것으로 예상했습니다.
나는 왜 전체 문자열을 인쇄합니까 cout<<test
?
때문에의 operator<< (basic_ostream<charT,traits>& os, const char* s);
(즉, 목록에서 # 2 "문자 시퀀스") ( 약간 더 기술 목록 ). test
포인터 또는으로 감쇠 char*
한 다음 C- 문자열로 인쇄됩니다.
cout << "Jeff";
(의 주소를 인쇄하는 대신) 정확히 동일한 이유가 작동합니다 "Jeff"
.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다