동료 (serioussly 나는 :) * 문자를 사용하지 말아)이로 감소 버그했다 : 그래서 그는 기본적으로이 수정합격 길이가 0 인 문자열 문자 예상 STL 기능에 ('0') *
testVar.append('\0'); //testVar is std::string
을 그것 :
testVar.append("\0");
나의 질문은 왜 첫번째로 isnt 합법인가? 길이가 0 인 종료 문자열로 간주 할 수 있습니까? 나는 VS10 std lib 구현을 시도해 보았습니다.하지만 후회했습니다. :)
요점은 0 값 char 인 '\ 0'은 포인터에 대한 0의 특수 값에 대한 널 포인터로 해석 될 수 있다는 것입니다. 그래서 append ('\ 0')는 append ((const char *) 0)를 호출합니다. –