我需要为每一步读取256位,直到二进制文件结束 . 在c中是否有任何操作逐位读取?我使用fread函数并读取32个字符 . 对于所有字符,我一点一点地移位8次 . 读完后将这256位写入文件 . 写?有同样的事吗?我的意思是做ı写32个字符=> 32 * 8 = 256位 .
不,您可以读取或写入的最小项目是 char (请记住,不一定是8位,这取决于实现) . 如果你想在内存中操作部分 char ,你需要使用 & , | << 和 >> ( and , or 和 left/right shift ) .
char
&
|
<<
>>
and
or
left/right shift
是的,您可以 fwrite 写任意数量的字符(与您使用 fread 读取它们的方式相同) .
fwrite
fread
1 回答
不,您可以读取或写入的最小项目是
char
(请记住,不一定是8位,这取决于实现) . 如果你想在内存中操作部分char
,你需要使用&
,|
<<
和>>
(and
,or
和left/right shift
) .是的,您可以
fwrite
写任意数量的字符(与您使用fread
读取它们的方式相同) .