程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> for-這個 getline函數 裡面lim怎麼回事?還有第一次執行s[i]=c;時,i的值是多少

for-這個 getline函數 裡面lim怎麼回事?還有第一次執行s[i]=c;時,i的值是多少

編輯:編程綜合問答
這個 getline函數 裡面lim怎麼回事?還有第一次執行s[i]=c;時,i的值是多少

#include
#define MAXLINE 1000
int getline( char line[],int maxline);
void copy(char to[],char from[]);
main()
{
int len;
int max;
char line[MAXLINE];
char longest[MAXLINE];
max=0;
while((len=getline(line,MAXLINE))>0)
if(len>max)
{
max=len;
copy(longest,line);
}
if(max>0)
printf("%s",longest);
return 0;
}
int getline(char s[],int lim)
{
int c,i;
for(i=0;i<lim-1&&(c=getchar())!=EOF&&c!='\n';++i)
s[i]=c;
if(c=='\n')
{
s[i]=c;
++i;
}
s[i]='\0';
return i;
}
void copy(char to[],char from[])
{
int i;
i=0;
while(( to[i]= from[i])!='\0')
++i;
}

最佳回答:


第一次執行s[i]=c;
i=0 c是讀取的第一個字符
lim表示緩沖區的長度

這些自己調試下就知道了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved