我在The C Answer Book中找到了這段代碼。這些函數之間有什麼不同?
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;
}
我寫我的版本:
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;
}
我只用一個變量「i
」作爲計數器,但最初的版本已經用了兩個變量「i
」和「j
」作爲計數器。 兩者有什麼區別?
請告訴我他們有什麼不同?
如何'蓋'變量? – ShuklaSannidhya
@ SandyLee_user53167:查看它是否大於最大值,如果是,則將其設置爲最大值。 – NPE