So stimulieren Sie die EOF ohne vorherige Zeilenumbruch in C

Nehmen wir an, ich habe den folgenden C-Code:

int getLine (char line[])
{
    int c, i=0;
    while( (c=getchar()) != EOF )
           line[i++]=c;
    line[i++] = c;
    return i;
}

>> Enter: 007
>> ^Z
>> Output: 

Wenn wir die Art und Weise, wie ich die obigen Ergebnisse gebe, genau beobachten, drücke ichEnter bevor Sie EOF stimulieren. Dies bedeutet, dass die Länge der Zeichenfolge 4 und nicht 3 beträgt (ohne EOF).

Wenn ich meine Übungen mache, habe ich wirklich Probleme mit diesem Extra \ n.

Wie stimuliere ich EOF ohne Newline? Ist das überhaupt möglich?

>> Enter: 007^Z
>> ^Z
>> Output: length=6

Antworten auf die Frage(2)

Ihre Antwort auf die Frage