이 코드는 C 응답 북에서 발견되었습니다. 이 함수들의 차이점은 무엇입니까?
int readline(char s[], int lim) {
int i,c,j=0;
for(i=0; (c=getchar())!=EOF && c!='\n'; ++i) {
if(i<lim-2) {
s[j]=c;
++j;
}
}
if(c=='\n') {
s[j]=c;
++j;
++i;
}
s[j]='\0';
return i;
}
내가 내 버전 썼다 : 나는 카운터하지만 원래 버전으로 하나 개의 변수 '
i
'를 사용했다
int readline(char line[], int lim) {
int c, i;
for(i=0; (c=getchar())!=EOF && c!='\n'; ++i) {
if(i<lim-2) {
line[i]=c;
}
}
if(c=='\n') {
line[i]=c;
++i;
}
line[i]='\0';
return i;
}
은 카운터로 'j
'이 'i
'변수 사용하고있다. 둘의 차이점은 무엇입니까?
어떻게 다릅니 까?
변수를 어떻게 제한합니까? – ShuklaSannidhya
@ SandyLee_user53167 : 최대 값보다 큰 지 확인하고, 최대 값보다 큰 경우 참조하십시오. – NPE