09-06-2007, 00:55
|
|
|
|
חבר מתאריך: 04.08.02
הודעות: 4,468
|
|
בדיוק המצב הכי גרוע להשתמש ב-gets.
הוא ציין שהוא לא יודע מה גודל הקלט, מה שהצעת לו זה מתכון ל-buffer overflow.
אם כבר, אז fgets, שזה גם לא פותרת את הבעיה שלו, כי פה הקלט מוגבל.
לחפש פתרון בתוך ספריית המחרוזת הסטנדרטית של C, זה חסר תקווה, כי אין שם ניהול זכרון.
פתרון אפשרי לבעיה שלו, זה לממש פונקציה משלו, שקולטת ומבצעת realloc's לפי הצורך.
פתרון לטווח ארוך ואפקטיבי יותר, להשתמש בספריה רצינית יותר, אולי bstring.
_____________________________________
C pogrammers never die. They are just cast into void.
|