c中如何实现同步内存中所有已修改的文件数据到储存设备

c中怎么实现同步内存中所有已修改的文件数据到储存设备
linux c 中用open打开文件然后用fsync函数

到C中用我用fopen打开的文件怎么实现上面的那个函数功能?

ps(表达能力不太好。。。)



------解决方案--------------------
先 fflush,然后 fileno 取出 fd,再 fsync。