10-07-10, 19:41 | # 1 |
אחראי פורום
|
שאלות על C ועל EXE FILE
שלום לכולם,
רציתי לדעת משהו לגבי שפת C. אחרי שאני יוצר EXE, למה הוא מקפיץ מסך שחור של CMD ברגע שהוא רץ? כלומר, נגיד יצרתי תוכנה ששמה בתוך משתנה I את הערך חמש, קמפלתי. כל פעם שאני מריץ את התוכנה היא פותחת לי לשניה מסך של DOS, למה? איך לעשות שלא תפעיל, פשוט תעבוד ברקע? שאלה שניה, איך ניתן לקלוט STRING מהמשתמש בלי להגדיר מראש את אורך הSTRING? משתמש בקומפיילר: VS2008. תודה!
__________________
אתר העסק ושירותיו: אחסון אתרים מקצועיים, שרת רדיו איכותי וגם ריסלר שרתי משחק מהיר. אי-מייל: admin at freshserv.net. |
14-07-10, 09:41 | # 2 |
חבר על
|
לגבי הסתרת החלון, תנסה את זה:
http://stackoverflow.com/questions/5...console-window קליטת סטרינג בלי להגדיר מראש את הגודל שלו: בהתחלה אתה צריך לקלוט עם אורך מסויים - אפילו גדול מאוד ואחרי זה אתה משכפל את ה STRING באמצעות הפונקציה strdup הפונקציה עושה duplicate לגודל המקורי של המחרוזת, ככה שבזכרון המחרוזת תתפוס מקום רק של הגודל שצורכים. הפונקציה strdup מחזירה מצביע, ככה שצריך להגדיר את זה בצורה הבאה: char str[1000] char *name gets(str) name = strdup(str) אם אתה רוצה לקלוט ישר ל name אתה צריך לעשות הקצאה דינמית של זכרון, באמצעות malloc
__________________
ליאור |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|