שאלה ב-C....
יש לי בעיה עם פונקציות fread ו-fwrite. תעיינו בבקשה בפונקציה ותגידו לי מה הבעיה? FILE *p1,*p2; int iTemp, i, flag, size = 0; Word *pList1 = Head->next; void *ptr_to_buf; p2 = fopen("Target.txt","w"); p1 = fopen("Source.txt","r"); if ( p1 == NULL || p2 == NULL) { puts("\nERROR in OPENing file AfterNewLine or target .txt"); exit(0); } //adding fputs("Printing every 10th word from list\n", p2); rewind(p1); do{ iTemp=0; for(i = 0; i<9; i++) { if(pList1->next == NULL) { flag = 1; break; } iTemp = iTemp + sizeof(*pList1); pList1 = pList1->next; }//end for //read and write size = sizeof(*pList1); fseek(p1,iTemp,SEEK_CUR); fread(ptr_to_buf, size,1 ,p1); fseek(p2,0,SEEK_END); fwrite(ptr_to_buf, size,1 ,p2); pList1 = pList1->next; }while((pList1->next!=NULL) || flag != 1); תודה
יש לי בעיה עם פונקציות fread ו-fwrite. תעיינו בבקשה בפונקציה ותגידו לי מה הבעיה? FILE *p1,*p2; int iTemp, i, flag, size = 0; Word *pList1 = Head->next; void *ptr_to_buf; p2 = fopen("Target.txt","w"); p1 = fopen("Source.txt","r"); if ( p1 == NULL || p2 == NULL) { puts("\nERROR in OPENing file AfterNewLine or target .txt"); exit(0); } //adding fputs("Printing every 10th word from list\n", p2); rewind(p1); do{ iTemp=0; for(i = 0; i<9; i++) { if(pList1->next == NULL) { flag = 1; break; } iTemp = iTemp + sizeof(*pList1); pList1 = pList1->next; }//end for //read and write size = sizeof(*pList1); fseek(p1,iTemp,SEEK_CUR); fread(ptr_to_buf, size,1 ,p1); fseek(p2,0,SEEK_END); fwrite(ptr_to_buf, size,1 ,p2); pList1 = pList1->next; }while((pList1->next!=NULL) || flag != 1); תודה