קריאה מקובץ בשפת C
שמתי את ההודעה גם בפורופ שפות תכנות, אבל זה די דחוף לי, אז אולי מישהו פה גם יוכל לענות... יש לי קובץ TXT של כמה מאות שורות המורכבות ממבנה הנתונים הבא - struct record { int key; char val[25]; }; ואני רוצה לגשת לרשומה ספציפית בקובץ. הגדרתי משתנה בשם X מסוג record, כך שאוכל לחשב את גודל המשתנה - y=sizeof(record. כעת אני כותב - fseek(fpin,4*Y,SEEK_SET) וקורא את הרשומה. הבעיה היא שאני לא מקבל את הרשומה הנכונה. בצעתי למשל את הקריאה האחרונה בתוך לולאה מ-1 עד 20, ובמקום לקבל את 20 הרשומות הראשונות, אני מקבל חלק מהרשומות פעמיים, ועל חלקן המחשב מדלג. יש למישהו מושג איפה טעיתי?
שמתי את ההודעה גם בפורופ שפות תכנות, אבל זה די דחוף לי, אז אולי מישהו פה גם יוכל לענות... יש לי קובץ TXT של כמה מאות שורות המורכבות ממבנה הנתונים הבא - struct record { int key; char val[25]; }; ואני רוצה לגשת לרשומה ספציפית בקובץ. הגדרתי משתנה בשם X מסוג record, כך שאוכל לחשב את גודל המשתנה - y=sizeof(record. כעת אני כותב - fseek(fpin,4*Y,SEEK_SET) וקורא את הרשומה. הבעיה היא שאני לא מקבל את הרשומה הנכונה. בצעתי למשל את הקריאה האחרונה בתוך לולאה מ-1 עד 20, ובמקום לקבל את 20 הרשומות הראשונות, אני מקבל חלק מהרשומות פעמיים, ועל חלקן המחשב מדלג. יש למישהו מושג איפה טעיתי?