gccではgets()とputs()関数を使用できない解決策

2213 ワード

テストコード、文字列スペースの削除:
#include

int main(void) {

    char a[100];
    int i = 0, j = 0;

    printf("input:");
    fgets(a, 100, stdin);  // gcc  gets puts     !! stdin     .
    for (i = 0; * (a + i) != '\0'; i++) {
        if (*(a + i) != ' ')
            a[j++] = a[i] ;
    }
    a[j] = '\0';    //         '\0'   ,j   
    //           1 ,      a[j+1]='\0'.
    printf("output:");
    fputs(a, stdout);

    return 0;
}

実行:
input:ashf s    sjdhf    sdfs lj l
output:ashfssjdhfsdfsljl
       . . .
fgets()fputs()の関数の代わりにgets()puts()の関数を使用します.