構造内のデータを永続的なものにする必要があります。つまり、ファイルに保存したいので、その文字を1文字ずつ読み取る必要があります...このために、以下のコードを書きました...以下のコードは機能しません構造をファイルに(1文字ずつ)書き込むには...その文字が1文字ずつ必要でした
struct x *x1=(struct x*)malloc(sizeof(struct x));
x1->y=29;
x1->c='A';
char *x2=(char *)malloc(sizeof(struct x));
char *s=(char *)malloc(sizeof(struct x));
for(i=0;i<sizeof(struct x);i++)
{
*(x2+i)=*((char *)x1+i);
}
fd=open("rohit",O_RDWR);
num1=write(fd,x2,sizeof(struct x));
num2=read(fd,s,sizeof(struct x));
for(i=0;i<sizeof(struct x);i++)
printf(" %d ",*(s+i));
freadとfwriteを使用できます...しかし、その文字を1文字ずつ実行したかったので、読み取りと書き込みを使用しています(これらは直接システムコールの儀式です)...書き込み機能に書き込むことができませんエラーを表示しています。つまり、-1 を返しています...上記のコードに何か問題がありますか...