프로가 되자.

post search result

printf()와 관련된 글 1개를 찾았습니다.

  1. 2007/11/02 printf(str)과 printf("%s", str)의 차이점

printf(str)과 printf("%s", str)의 차이점

* 이번 글은 초보자를 위한 글입니다.

가끔 디버깅을 목적으로 printf(str); 와 같이 작성을 할 때가 있다.
그럼 printf("%s", str); 과 뭐가 다르지?

우선 다음과 같은 코드가 있다고 가정 해 보자.

int main() { char *str = "1234"; printf(str); return 0; }


출력이 잘 된다.
그러면 아래와 같이 바꿔보자.

int main() { char *str = "1234%d"; printf(strd); return 0; }


결과는?

이런 현상이 발생하는건 printf의 첫번째 인자는 "format" 이라는 형식이기 때문이다.
따라서 일반 문자열 처리하는데는 지장이 없지만, escape 문자를 처리할 때에는 문제가 발생할 수 있다.

따라서 printf("%s", str); 이나 puts(str)로 해야한다.

크리에이티브 커먼즈 라이센스
Creative Commons License
2007/11/02 11:31 2007/11/02 11:31

top

About this post

이 글에는 아직 트랙백이 없고, 아직 댓글이 없고, 태그가 달려있으며,
2007/11/02 11:31에 작성되었습니다.

◀ recent : [1] : previous ▶

blog information

프로가 되자.
BLOG main image
빗소리를 먹는 사람.
RSS 2.0Tattertools
최근 글 최근 댓글 최근 트랙백
태그 구름사이트 링크