הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 10-07-10, 19:41   # 1
FreshServ.Net
אחראי פורום
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 3,539
שלח הודעה באמצעות ICO אל FreshServ.Net שלח הודעה באמצעות MSN אל FreshServ.Net Send a message via Skype™ to FreshServ.Net

FreshServ.Net לא מחובר  

שאלות על C ועל EXE FILE

שלום לכולם,

רציתי לדעת משהו לגבי שפת C. אחרי שאני יוצר EXE, למה הוא מקפיץ מסך שחור של CMD ברגע שהוא רץ? כלומר, נגיד יצרתי תוכנה ששמה בתוך משתנה I את הערך חמש, קמפלתי. כל פעם שאני מריץ את התוכנה היא פותחת לי לשניה מסך של DOS, למה? איך לעשות שלא תפעיל, פשוט תעבוד ברקע?

שאלה שניה, איך ניתן לקלוט STRING מהמשתמש בלי להגדיר מראש את אורך הSTRING?

משתמש בקומפיילר: VS2008.

תודה!
__________________
אתר העסק ושירותיו: אחסון אתרים מקצועיים, שרת רדיו איכותי וגם ריסלר שרתי משחק מהיר.


אי-מייל: admin at freshserv.net.
  Reply With Quote
ישן 14-07-10, 09:41   # 2
liorclub
חבר על
 
מיני פרופיל
תאריך הצטרפות: Jan 2007
גיל: 39
הודעות: 756
שלח הודעה באמצעות ICO אל liorclub שלח הודעה באמצעות MSN אל liorclub

liorclub לא מחובר  

לגבי הסתרת החלון, תנסה את זה:
http://stackoverflow.com/questions/5...console-window


קליטת סטרינג בלי להגדיר מראש את הגודל שלו:

בהתחלה אתה צריך לקלוט עם אורך מסויים - אפילו גדול מאוד
ואחרי זה אתה משכפל את ה STRING באמצעות הפונקציה strdup
הפונקציה עושה duplicate לגודל המקורי של המחרוזת, ככה שבזכרון המחרוזת תתפוס מקום רק של הגודל שצורכים.
הפונקציה strdup מחזירה מצביע,
ככה שצריך להגדיר את זה בצורה הבאה:

char str[1000]
char *name

gets(str)
name = strdup(str)

אם אתה רוצה לקלוט ישר ל name אתה צריך לעשות הקצאה דינמית של זכרון, באמצעות malloc
__________________
ליאור
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 03:51.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ