티스토리 뷰

기타

char*, char[]

따분한놈 2015. 10. 14. 21:39

알고리즘 문제를 풀던 중 자꾸 문자열을 넘겨주는 곳에서 에러가 났습니다.

void reserve( char *str )
{
	char *ss =str;
	int n = 0;
	while((*ss)!=NULL)
	{
		n++;
		ss++;
	}
	ss--;

	int i = 0;
	while( n/2 > i++ )
	{
		char temp = *str;
		*str++ = *ss;
		*ss-- = temp;
	}
}

*str++ = *ss; 이 부분에서 났었습니다. 그래서 원인을 찾던 중 reserve 함수의 인자로 넘겨주는 char형이 char* 이 문제라는 것을 알게 되었습니다. 하.. 예전에도 분명 문자열을 주고 받고 했었는데 왜 몰랐는지. 그때도 분명 문제가 있었을 텐데.. 까먹은건지 어떤건지.. 정확히는 좀 더 알아봐야 겠지만 char* 경우 문자를 바꾸거나 하려고 하면 에러가 난다는 것.. char[]를 사용하면 문제가 해결되긴 하지만. 구글링을 해서 찾아보면 몇몇 이유들이 있긴한데 좀 더 찾아 봐야겠습니다.
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함