用gcc 寫一有turbo c之getch()功能的程式 |
尚未結案
|
seebely
一般會員 發表:1 回覆:1 積分:0 註冊:2005-04-20 發送簡訊給我 |
大家好,我是K Top的新人,請大家多多指教!
想請問板上的程式高手,最近我們老師要我們寫一使用serial port在兩台linx pc互傳資料的程式-
serial port的部分還好,但是老師要我們寫一鄧入使用者名稱和密碼畫面-而且密碼不能顯在螢幕上~
小弟第一個想到的就是使用getch
(位於 gcc 的curses.h ,編譯時要加 -lcurses),
但程式執行到一半就會出現 "segmetaion fault" 的字樣,
不知道是不是getch用法用錯了~
請問有沒有人可以指導一下小弟,
在gcc 上如何使用getch ,還是有沒有替代方法隱藏密碼? 附上部分程式碼如下:
(編譯可過,SERIAL PORT 的部分也已經認證過,沒有問題)
while (STOP==FALSE) { printf("Username:"); scanf("%s",buf); res = write(fd,buf,20); buf[res]=0; printf("Password:"); ch=getch(); while (ch!='\r'){ buf[i]=ch; i=i 1; ch=getch(); } res = write(fd,buf,20); res4 = read(fd,buf3,20); buf3[1]=0; if ( buf3[0] == 'y' ) { printf("Login Correct\n"); STOP=TRUE; } else if ( buf3[0] == 'n' ) printf("Login Incorrect\n"); else printf("Server Down\n"); // printf(":%s:%d\n",buf,res); // if (buf[0]=='z') STOP=TRUE; } 謝謝各位的閱讀和指教 BY Seebely |
richtop
資深會員 發表:122 回覆:646 積分:468 註冊:2003-06-10 發送簡訊給我 |
seebely 您好: 您的程式碼中,buf[i]的i,沒有給定初值,不知有沒有影響?
另外,底下有個讀取密碼的程式,您可參考一下!
程式是在Windows XP下,用 Dev C 編譯(gcc)與執行。
補充說明:
沒想到Linux下沒有getch(),而且要完成這些功能似乎沒有想像的簡單!
底下的連結,希望能幫上您的忙!
http://bbs.ee.ntu.edu.tw/boards/Programming/11/5.html
UNIX 的確是值得想她致敬!!!
> < class="code">
#include
|
seebely
一般會員 發表:1 回覆:1 積分:0 註冊:2005-04-20 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |