for문에서 조건식을 배열로 설정했을때?!
빵돌
2023.04.01
질문 제목 : for문에서 조건식을 배열로 설정했을때?!for문에서 조건식 관련 질문입니다..^^질문 내용 : //문자열을 입력받고출력하는프로그램.
#include stdio.h
#include string.h
void main()
{
int i, length=0;
char str[50];
printf(\n 문자열을 입력하세요 : );
gets(str);
printf(\n 입력된 문자열은 \n \ );
for(i=0; str[i]; i++)
{
printf(%c, str[i]);
length+=1;
}
printf( \ \n 입니다. );
printf( \n\n 입력된 문자열의 길이 = %d \n, length);
}
이 for문에서 조건식이 str[i]인데, 만약a를 입력받으면 str[i]는 a니까 97? 그럼 str[0]부터 str[97]까지출력!?
틀린소스는 아닌거같은데..조건식에 str[i]의 뜻을 잘모르곘네요..왜 썼는지를!!
p.s
저도 여기에서 답변을 기다리시는분들 도와드리고싶은데..아직실력이..이제 질문좀 그만하고 저도 답변다는 사람이
되고싶네요 ㅜㅠ
-
꽃내음
감사합니다 아래 답변하신분 말씀을 참고하면
해당 배열의 널문자까지 반복한다는뜻이되는군요 -
블랙캣
str[i] != 0 과 같습니다. 즉, str[i] 가 0 이 아니면 반복하라는 뜻이죠.
str[i] 가 0 이면 거짓이므로, for문을 끝내고,
0 이 아니면 참이므로, for문을 반복하죠.