Programming/C/C++┃2009년 02월 17일 10시 33분
얼마전에 보고 좌절 했는데... 되새김질 해보려고 늦었지만 포스팅 해본다.
art.oriented
님의 글 중 아주 단순한 문제의 포스팅이 있었다.다음 문자열의 길이는?

이 포스팅의 문제를 보면
int a = strlen("123");
int b = strlen("123\0");
int c = strlen("123\012");
int d = strlen("123\0123");
int e = strlen("123\0123\0ABC");
int f = strlen("123\0ABC");
이것의 답은 무엇이라 생각 하나요? 답은 해당 포스팅을 참조 하시기 바랍니다.
\0이 NULL CHARACTER로만 생각 한 나는 각성 해야겠다.
그냥 모두 3이 아닌가? 이런 문제가 뭐가 어렵다고 생각하냐고 말씀 하시는 분은 위 포스팅의 댓글을 꼬옥 읽어 보기 바랍니다.

┃http://www.withdev.com/trackback/421
-
도아┃2009년 02월 18일 20시 46분 흔히 일어나는 일이죠. 저도 밤새 프로그램을 디코딩 했습니다. 계속 for문에서 걸리는데 그 이유를 모르겠더군요. 나중에 봤다면 마지막에 ;이 있더군요.-
낚시광준초리┃2009년 02월 19일 07시 46분 ㅎㅎㅎ 잘지내시죠????
그런데 솔직히 문법적 오류 보다는 위에 문제는 개발자 스스로가 잘못 생각 하는 논리적 오류에 더 가깝다는 생각이 들어요..
그래서 멍했습니다.
\0이 무조건 스트링의 마지막인 널 스트링이라고만 생각 했으니깐요..
(뭐 물론 그닥 저런 사항을 고려 안하고 프로그램을 하다보니 그냥 당연한 듯이 사용 했지만..)
-


