读书人

求解程序注释,该如何处理

发布时间: 2012-04-09 13:41:24 作者: rapoo

求解程序注释
由于刚刚入手C程序,现在做习题,但对本程序不是很清楚,请高手给予详细注释,谢谢!

C/C++ code
#include <stdio.h>#define MAXLINE 1000int 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) {        printf("%d, %s", len,line);        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, j;    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;}void copy(char to[], char from[]){    int i;    while((to[i] = from[i]) != '\0')        ++i;}


[解决办法]
字符数上限是MAXLINE,最后留两个字符的位置,一个放'\n',一个放'\0'。 所以是总数减2

读书人网 >C++

热点推荐