for문에서 함수 호출하는 횟수에 제한이 있는지요?
글쓴이: anyjava / 작성시간: 화, 2004/10/19 - 7:56오후
아래 프로그램을
# cmd 127 하면 실행이되어 "End"문자열이 출력되지만
# cmd 128 하면 프로그램이 끝나지 않고 계속 떠 있습니다.
스택의 크기와 관련 있는가 해서
# ulimit -s 16384로 늘려보기도 했는데
어떻게 하면 127보다 큰수로 for문을 돌려도 결과가 나올지요?
고수님들의 한마디를 바랍니다.
------------------------------------------------------------------------
int
main (int argc, char *argv[])
{
char i;
if (argc < 2)
{
printf ("Usage: cmd num\n");
exit (-1);
}
for (i = 1; i < atoi (argv[1]); i++)
{
insertNode ();
}
printf ("End\n");
return 0;
}
void
insertNode ()
{
return;
}
Forums:
변수 i 의 타입이 무엇인가요? 일반적으로 그 타입의 최대값은 얼마일까요
변수 i 의 타입이 무엇인가요? 일반적으로 그 타입의 최대값은 얼마일까요? atoi 가 리턴하는 타입은 무엇일까요? 만약 i 타입이 허용하는 최대값보다 큰수가 i 에 대입되면 어떻게 될까요? 그리고, for 루프의 비교문에 atoi 를 매번할 이유가 있을까요?
타이핑을 잘못하신 것 같습니다.
^^이런 실수를 했었군요...
char i로 선언해 버려서 이런 문제가 발생했군요.
이런 것을 스택을 뒤지고
strace를 하고 했습니다.
감사합니다.
커널을 정복 할때 까지...
댓글 달기