
将结构体写入文件可使用fwrite函数,原型:
size_t fwrite(const void* buffer, size_t size, size_t count, FILE* stream)参数含义:
(1)buffer:是一个指针,对fwrite来说,是要获取数据的地址;
(2)size:要写入内容的单字节数;
(3)count:要进行写入size字节的数据项的个数;
(4)stream:目标文件指针;
返回值:
实际写入的数据项个数count。
注:文件需用二进制写的方式打开,即:
fout = fopen("file address", "wb") 从文件中读取结构体信息,可使用fread函数,原型:
size_t fread ( void *buffer, size_t size, size_t count, FILE *stream) 参数含义:
(1)buffer:用于接收数据的内存地址
(2)size:要读的每个数据项的字节数,单位是字节
(3)count:要读count个数据项,每个数据项size个字节.
(4)stream:输入流
返回值:
实际读取的元素个数。
注:文件需用二进制读的方式打开,即:
fin = fopen("file address", "rb") fwrite和fread都是单纯的写、读二进制数据,所以需要配合使用,以保证数据有效。用fwrite产生文件,之后配套的用fread来读取文件。
#include <stdio.h>exec sql include sqlca
int main(){
exec sql begin declare section
char userpasswd[30]="openlab/123456"
struct{
int id
char name[30]
double salary
}emp
exec sql end declare section
exec sql connect:userpasswd
exec sql declare empcursor cursor for
select id,first_name,salary from
s_emp order by salary
exec sql open empcursor
exec sql whenever notfound do break
for(){
exec sql fetch empcursor into :emp
printf("%d:%s:%lf\n",emp.id,emp.name,
emp.salary)
}
exec sql close empcursor
exec sql commit work release
}
把数据存到结构体里。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)