[問題] C的fflush()沒作用

作者: Caramel0519 (洨賈斯汀)   2014-11-10 23:09:44
小弟是剛學程式語言的新手,最近買了本C語言教學手冊(洪維恩)就開始摸索了
因為本身是使用Macbook,所以直接用xcode寫看看C語言
大部份遇到問題都是自己google,本身商科出身身邊沒人可以問Q_Q
這兩天做題目練習上卡在fflush()這,程式碼如下
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char x[10];
char y[10];
printf("enter a string: ");
scanf("%s",x);
fflush(stdin);
printf("enter another string: ");
scanf("%s",y);
printf("%s \n%s\n",x,y);
return 0;
}
我打 "aaa bbb",出來的結果應該是會因為fflush()的關係 在第二題停留要我輸入第二

但試過加上fflush()和沒加,出來的結果完全一樣
請問是我哪裡寫錯了嗎??
另外請問conio.h這個標頭檔在xcode無法執行嗎?
那要怎麼使用getch()和getche()這兩個函數
作者: ckvir (ckvir)   2014-11-11 00:48:00
作者: yr (Sooner Born Sooner Bred)   2014-11-11 09:13:00
fflush 在 C 標準中並沒有對 stdin 做定義。
作者: manlike ( )   2014-11-11 18:11:00
flush 操作應該是用在 output stream 的吧 = =||
作者: yr (Sooner Born Sooner Bred)   2014-11-12 18:43:00
因為這個函示沒對 stdin 定義,所以每個編譯器實作會不同所以你不能去預期一個特定編譯器去呼叫 fflush(stdin) 的結果

Links booklink

Contact Us: admin [ a t ] ucptt.com