에서 배열 요소에 액세스 저는 C++을 처음 접했고 전체 포인터와 관련하여 여전히 고민 중입니다.char *
문자/문자열 배열의 시작을 가리키는 char *을 반환하는 함수가 있다고 가정 해 보겠습니다.
char* read() {
char data[] = "this for example";
return *data;
}
는 나중에 나는이 데이터에 액세스하려면,하지만 난 이런 걸 할 수 있다고 생각하지 않습니다이에 read()
에 의해 반환 된 데이터를 사용하는 올바른 방법이 무엇인지
char* data = read();
if(data[3] == 's')
return true;
을 예?
로컬 배열에 대한 포인터를 반환하기 때문에 올바른 방법이 없습니다. 함수 외부에서 그것을 참조 해제하는 것은 정의되지 않은 동작입니다. – juanchopanza
"s"란 무엇입니까? 'if (data [3] == s)'줄 – Oxcug
코딩을 C++로 시작한다면, 몇 년 전과 마찬가지로 * 지금 * 배울 수 있습니다. shared_ptr, unique_ptr 등을보십시오. – v010dya