作者vtr198172 (43米的深海)
看板C_and_CPP
标题[问题] memcpy 的问题?
时间Fri Jul 3 17:55:49 2009
我想利用V4L2的范例程式去撷取webcam的影像档,但在撷取到一整个影像的buffer时,
可以利用memcpy这函式把buffer写入到一个档案里吗?
程式大概是像下面这样子:
FILE* fp = fopen(file_name, "w");
memcpy(fp, p, VIDEO_SIZE);
fclose(fp);
因为我执行後会出现segment fault.. 谢谢各位
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.22.20.210
1F:→ littleshan:FILE* 不是这样用的,你的需求要用 mmap 07/03 17:58
2F:推 zlw:memcpy没这麽做这麽复杂的事,他单纯只会到fp所在位址,取4个 07/03 18:18
3F:→ zlw:Bytes认定为目的地所在的记忆体位址,然後把资料复制到该处。 07/03 18:18
4F:→ zlw:......没办法做这麽复杂的事... 07/03 18:19
5F:→ weiyucsie:楼上 他写的是VIDEO_SIZE吧? 07/03 18:31
6F:→ weiyucsie:(其实是我没看到VIDEO_SIZE的定义XD) 07/03 18:34
7F:推 Ebergies:z 是指... memcpy 对第一个参数做的事 07/03 18:35
8F:推 zlw:抱歉没讲清楚,我是指 mov ecx,dword ptr [fp] 这件事 07/03 18:41
9F:→ zlw:再把 ecx 存的值 push 到堆叠,然 memcpy 函数会去堆叠取参数 07/03 18:41
10F:→ weiyucsie:sorry罗 以为那个4bytes是在讲sizeof(fp)之类的 07/03 18:50
11F:→ ledia:我想你需要的是 fwrite 07/03 22:26