Тема: Читання та запис структур
Доброго дня!
#include <sys/stat.h>
#include <memory.h>
#include <fcntl.h>
#include <stdio.h>
#include <io.h>
#include <string.h>
#include <conio.h>
#include <iostream> 
void show_string(char *string) 
{ 
   while (*string) std::cout << *string++; 
} 
struct mystruct {
    int i;
    char buf[5];
    double d;
};
int main(int argc, char* argv[])
{
   
    char str1[]="Sample string";
   // відкриваємо файл
    int fh = _open("file.dat",_O_RDWR | _O_BINARY);
    if (fh == -1)
    {
        // або при необхідності створюємо новий
        fh = _creat("file.dat",_S_IREAD | _S_IWRITE);
        if (fh == -1)
            // не шмагла :xz:
            return 1;
    }
    // готуємо структури для запису - читання
    mystruct ms;
    mystruct B;
    memset(&ms,0,sizeof ms);
    memset(&B,0,sizeof B);
    ms.i = 43690;
    ms.d = 234881023;
    strcpy(ms.buf, "Бука");
    // позиціонуймо покажчик в кінець файлу
    _lseek(fh,0,SEEK_END);
    
    char* pstr1 = 0;  pstr1+=1245008;
    show_string(pstr1);
    // додаємо нову структуру
    _write(fh,&ms,sizeof ms);
    // позиціонуймося у початок
    _lseek(fh,0,SEEK_END);        // long _ lseek ( int fd, long offset, int origin ); Переміщує покажчик файлу у вказане місце розташування.
    // читаємо першу записану структуру
    _read(fh,&B,sizeof B);
    
    
    printf("{ i: %d, d: %d, buf: %c }", B.i, B.d, B.buf);
    
    
    getch(); 
    return 0;
}Я звичайно розраховував що file.dat буде прочитаний і присвоєний B а що це?
У  B нулі......    Взагалі що в мене таки B?  Я гадав що дещо таке саме як обЄкт.
А може й ні...