文件操作
格式化输入输出
printf("%[flags][width][.prec][hlL]type"
)
scanf("%[flag]type")
printf
和scanf
的返回值:读入的项目数,输出的字符数
#include<stdio.h>int main(int argc, char const *argv[])
{int number;int i = scanf("&i",&number);int j = printf("%d\n",number);printf("%d::%d",i,j);return 0;
}
文件的输入输出
运行程序时使用>
和<
:对文件的输入输出进行文件重定向
FILE
结构完成文件读写6.1.2
FILE* fp = fopen("file","r");
if(fp){fscanf(fp,...);fclose(fp);size_t fread(void *restrict ptr, size_t size, size_t nitems, FILE *restric stream);
}else{...
}
文本文件可以通过more
,tail
,cat
来查看,Unix
是文本文件,而DOS
是二进制文件
二进制读写
size_t fread(void *restrict ptr, size_t size, size_t nitems, FILE *restric stream);
size_t fwrite(void *restrict ptr, size_t size, size_t nitems, FILE *restric stream);
//内存位置,内存单元大小,内存单元个数,文件指针
在二进制文件中定位
long ftell(FILE *stream);
int fseek(FILE *stream, long offset, int whence);
二进制文件不可跨平台,多用文本文件
底层操作
按位运算符& | ~ ^ << >>
,与 或 非 异或 左移 右移
位段
struct U {unsigned int leading : 3;unsigned int flag1 : 1;unsigned int flag2 : 1;int trailing : 11;
};
更多推荐
底层,语言,操作,文件
发布评论