변수명으로 추측하건데 ch 가 배열 포인터가 아니라 단순히 한 문자에 대한 포인터같은데 그냥 *ch = \'a\'; 이런식으로 넣어주면 함수 호출한 쪽에서 주소를 보낸 그 변수값이 바뀜
헣 저건 사실 보기 편하라고 바꾼거고 진짜 변수명은 pszFormat임
printf를 생각하면 되겠다
포맷스트링이면 문자열 포인터겠지
근데 const char * 일 경우엔 원 주소에 있는 값을 바꿀 수는 없고 참조만 할 수 있음
c표준의 포맷스트링은 수정할 이유도 없을 뿐더러 보통 printf(\"%d\",10); 이런식으로 \" \" 로 넣는 경우가 많아서 어차피 .rodata 에 들어가니 수정도 불가
근데 그렇게 사용할 경우 ...을 안써도 상관없지 않나요? ...이란게 실제 문법인가요? 왜 저렇게 적어도 에러가 안나져
실제 문법입니다. 가변인자에 대해 검색해보세요.(stdarg.h)
ㄳㄳ
가
변
인
자!
.rodata 섹션은 뭐지 ? .rdata 아님 ?
변수명으로 추측하건데 ch 가 배열 포인터가 아니라 단순히 한 문자에 대한 포인터같은데 그냥 *ch = \'a\'; 이런식으로 넣어주면 함수 호출한 쪽에서 주소를 보낸 그 변수값이 바뀜
헣 저건 사실 보기 편하라고 바꾼거고 진짜 변수명은 pszFormat임
printf를 생각하면 되겠다
포맷스트링이면 문자열 포인터겠지
근데 const char * 일 경우엔 원 주소에 있는 값을 바꿀 수는 없고 참조만 할 수 있음
c표준의 포맷스트링은 수정할 이유도 없을 뿐더러 보통 printf(\"%d\",10); 이런식으로 \" \" 로 넣는 경우가 많아서 어차피 .rodata 에 들어가니 수정도 불가
근데 그렇게 사용할 경우 ...을 안써도 상관없지 않나요? ...이란게 실제 문법인가요? 왜 저렇게 적어도 에러가 안나져
실제 문법입니다. 가변인자에 대해 검색해보세요.(stdarg.h)
ㄳㄳ
가
변
인
자!
.rodata 섹션은 뭐지 ? .rdata 아님 ?