السلام عليكــم ورحمـة الله وبركاتــه
- struct clr
- {
- int i,j;
- };
- struct clr q;
ادا قمنا بكتابة 50 سجل في ملف
واردنا ان نقوم بقراءة السجل الاخير هل نقوم بكتابة
fseek(f,-1,2)
ام
fseek(f,-sizeof q,2);
اجوا ان يتم شرح الجواب وشكرا مقدما
السلام عليكــم ورحمـة الله وبركاتــه
ادا قمنا بكتابة 50 سجل في ملف
واردنا ان نقوم بقراءة السجل الاخير هل نقوم بكتابة
fseek(f,-1,2)
ام
fseek(f,-sizeof q,2);
اجوا ان يتم شرح الجواب وشكرا مقدما
تم تعديل هذه المشاركة بواسطة Xacker في 12 فبراير 2009 في 06:03
مش عارف سجل يعني إيه هل يعني بايت؟
لكن إذا كتبت كلمة arabteam2000 داخل ملف text.txt
هذا المثال سيقرأ آخر حرف
#include <stdio.h>
int main() {
char buffer[12];
FILE *f;
f = fopen("test.txt", "r");
fseek (f , 11 , SEEK_SET);
fgets(buffer, 2, f);
printf("last character is: %s",buffer);
fclose(f);
return 0;
}المثال سهل جدا وأعتقد انه مش محتاج شرح

[وسط].
[/وسط]
البارمتر الاوسط = طول السجل × ترتيبة.
في مثالك يكون:
سجل 50 موقعه =49
لم انتبه انك استخدمت SEEK_END .
اذا كنت تريد استخدامه فهو بنفس الطريقه لكن اشارة سالب
اذا اردت السجل خمسين من سجلات عددها خمسين
واذا ارد العنصر رقم واحد من سجلات عددها خمسين
شكرا لكم على الاجابة يااخوة وجزاكم الله خيرا :lol: