이 유사한 문의가 많이 있지만, 내 경우에는 내가 작동하지 않는 것을 이해하지 않습니다를 sizeof의 char * 배열/C++
int mysize = 0;
mysize = sizeof(samplestring)/sizeof(*samplestring);
std::cout << mysize << '\n' << samplestring;
이 출력 :
4
Press 'q' to quit.
그게 어떻게 가능해? 4 확실히이 문자열의 크기가 아닙니다. 나는 심지어 같은 결과, 다음과 같은 시도 :
mysize = sizeof(samplestring)/sizeof(samplestring[0]);
편집 : 좋아,이 선언이다 : 나는 C++에있어
char *samplestring = "Start.";
가,하지만 난 기능을 사용해야 만 accept char *. 나중에 코드에서 내가 좋아하는, 그 변수에 새로운 문자열을 할당합니다
samplestring = "Press 'r' for red text.";
예, 컴파일러는 나에게 경고를 제공하지만, 나는 내가 그들을 덮어 쓸 수없는 경우 나 다른 문자열을 사용하는 방법에 대해 아무 생각이 ...
어떻게'samplestring'이 선언 되었습니까? –
여기서'samplestring'의 정의는 무엇입니까? – phoxis
당신은 가장 중요한 정보를 남길 수있었습니다! – Arkadiy