Как стимулировать EOF без предшествующего перевода строки в C

Допустим, у меня есть следующий код C:

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

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

Если мы внимательно наблюдаем за тем, как я даю вывод выше, я нажимаюEnter до стимуляции EOF. Это означает, что длина строки 4, а не 3 (исключая EOF).

Когда я делаю свои упражнения, я действительно сталкиваюсь с некоторыми проблемами с этим дополнением.

Как мне стимулировать EOF без перевода строки? Это вообще возможно?

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