פורסם 2009 בינואר 116 שנים שלום לכולם..מדובר במשחק בול פגיעה...יש לי תוכנית מסוימת בנויה עם PROTTYPES ו MAIN ..כאשר אני אמור לכתוב את תוכן 8 הפונקציות הנתונות ללא שום מגע בתוכנית ה MAIN הנתונה...ישבתי ימים רבים על התרגיל אח יש מספר בעיות...הראשונה היא בפונקצייה הראשונה כאשר יש בעיות בין הקריאה ככל הנראה של המחרוזת מהמשתמש...צירפתי את שני הקבצים..תודה למי שעוזר......[attachment deleted by admin]
פורסם 2009 בינואר 216 שנים שלום לך אם הבנתי נכון,ת'התחלה לפחות..,אתה אמור לקלוט מחרוזת מהמשתמש שתישמר ב-strRequest(המוגדרת בMAIN, ולא הבנתי למה יש צורך במחרוזת בגודל 256 , למה לא מספיק מקסימום 5 לפי המילה הארוכה CHECK???) בכל אופן void GetRequest(char strInp[]) //קולטת מחרוזת עם בקשת המשתמש{ char strInp aa[256]={0};printf ("please enter:\n CHECK\n ALL\n QUIT\n");scanf("%s",strInp);} למה אתה מגדיר שוב מחרוזת בתוך הפונ'? char strInp aa[256]={0}; -האם הגדרת כאן מחרוזת ששמה strInp aa??מזתומרת? הרי א"א שם בעל 2 מילים ורווח?.. נראלי שצריך להוריד את שורת ההגדרה בפונ' ואז בעית הקריאה תיפתר [br]פורסם בתאריך: 2.01.2009 בשעה 02:29:23 int Same(char str1[],char str2[]) // בודקת שוויון מחרוזות { char strRequest[256]={0}; int same=0 ; int i; strcmp (strRequest,STR_CHECK); //if (strcmp==0) // same=1 ; // return same; } אם צריך לבדוק אם 2 המחרוזות שנשלחו כפרמטרים שוות או לא,לא הבנתי מה עשית.. למה מוגדר I ? ולמה SAME? נראלי זה עוד בעיה להגדיר משתנה בשם הפונ', char strRequest[256]={0}; -לא נראלי שזה אפשרי להצהיר ככה במחרוזת,ואם הגדרת כאן ואתה הכנסת ערכה אז למה משווה אותה? בשביל להשוות בין 2 המחרוזות שקיבל ,מה יותר פשוט מבדיקה: [br]פורסם בתאריך: 2.01.2009 בשעה 02:46:34 if strcmp(str1,str2) return 1else return 0 [br]פורסם בתאריך: 2.01.2009 בשעה 03:00:27 אני מקווה שעזרתי במשו וסליחה אם נשמעתי ככה מעפנה, זה השעה ללכת
פורסם 2009 בינואר 216 שנים מחבר תודה רבה על העזרה...לגבי גודל המחרוזת כפי ששמת לב בMAIN זה משהו שנתון לי...ואסור לי לשנות...באמת שאני לא יודע למה הכריזו שם על מחרוזת כזו ארוכה..אז ככה : לגבי char strInp aa[256]={0}; לא התכוונתי לשלוח את זה כך... זה פשוט נסיון שעשיתי ונשאר בטעות בקובץ ..בכל אופן..אם אני מגדיר מחרוזת שוב בתוך הפונקציה זה לא אמור להוות בעיה נכון?לגב int same=0 ; זה גם כן על דרך שחשבתי התחלה אך בסוף לא השתמשתי בהם...שוב השארתי אותם כי זה לא אמור להפריע ורציתי למחוק רק בסוף int i;בכל אופן ביצעתי את השינויים...אך עדיין יש בעיות..לא משנה מה אני מקליד לו הוא ניגש לפונקציה וכותב לי תקליד 4 ספרות...עידכנתי את הקובץ..תודה!
פורסם 2009 בינואר 316 שנים ? אני בחורה דתיה שומרת תורה ומצוות ובין היתר גם שבת, נא להתחשב... אם אני מגדיר מחרוזת שוב בתוך הפונקציה זה לא אמור להוות בעיה נכון? זה בעיה כשזה שם זהה לפרמטר שנשלח לפונ' זו. לא משנה מה אני מקליד לו הוא ניגש לפונקציה וכותב לי תקליד 4 ספרות... מז'תומרת? ' וכותב לי תקליד 4 ספרות ' איפה?? טוב אלך לבדוק איך זה נתקע שם...
פורסם 2009 בינואר 316 שנים בואינה הוא עבר לך קימפול כי לי הראה כמה בעיות...והיה חסר include>string.h< לפקודה strcmpשמת לב גם שמבדיל בין אותיות קטנות לגדולות ז"א strcmp מבדיל בין all ל-ALLוטעות שלי ,בפונ' שמשווה בין 2 מחרוזות אם רוצים שיחזיר 1 כששוות ואחרת 0 אז צריך להחליף בreturn כך: if (strcmp(str1,str2)) return 0 ;else return 1 ; כי strcmp מחזיר 0 כאשר המחרוזות שוותתקן את זה,נראלי זה עשה בעיה...
פורסם 2009 בינואר 416 שנים מחבר שוב תודה על התגובה...ומצטער על הלחץ...לגבי ההשוואה בין 2 המחרוזות שמתי לב לזה ..אבל תודה...וכן הוא עובר לי קימפול...
פורסם 2009 בינואר 616 שנים מחבר טוב תודה בכל אופן על הניסיונות..כבר לא ממש הכרחי לפתור את זה..תודה לך.
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.