[問題] 用 getch() 無法取得取得正確的字

看板C_and_CPP作者 (ppt5566)時間12年前 (2013/09/14 01:17), 編輯推噓2(209)
留言11則, 4人參與, 最新討論串1/2 (看更多)
想請問一下哪裡出了錯 因為不管打了正確密碼他還是顯示密碼錯誤 有請各位大大了@@ #include <stdio.h> #include <stdlib.h> #include <conio.h> int main(void) { char pawd[7]="qaz123"; char input; int a; printf("請輸入密碼"); for(a=0;a<6;a++) { input=getch(); printf("*"); } if (input==pawd[7]) printf("密碼正確\n"); else printf("密碼錯誤\n"); system("pause"); } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.121.54.141

09/14 01:18, , 1F
為什麼你的縮排看起來如此的彆扭
09/14 01:18, 1F

09/14 01:20, , 2F
新手見諒一下QQ
09/14 01:20, 2F

09/14 01:21, , 3F
你的input只用了一個char,沒辦法儲存整個6 char密碼
09/14 01:21, 3F

09/14 01:22, , 4F
連帶後面的if判斷也是錯的
09/14 01:22, 4F

09/14 01:22, , 5F
重看一遍字串那一章,你需要的是strcmp()
09/14 01:22, 5F

09/14 01:28, , 6F
你沒發現你拿來比的兩個東西不一樣嗎...
09/14 01:28, 6F

09/14 01:45, , 7F
字串那張課本好像沒提到strcmp(),不過老師好像有講到
09/14 01:45, 7F

09/14 01:47, , 8F
strcmp()是比大小的 wuliou跪求提示
09/14 01:47, 8F

09/14 01:54, , 9F
1. input僅能存1個字元 有人密碼只比一個字元?
09/14 01:54, 9F

09/14 01:57, , 10F
2. 不用strcmp比較字串的話,則應該每次讀入都比較。
09/14 01:57, 10F

09/14 02:00, , 11F
感謝你的P幣~
09/14 02:00, 11F
文章代碼(AID): #1ICqYJEL (C_and_CPP)
文章代碼(AID): #1ICqYJEL (C_and_CPP)