5.22训练记录

linux:
文件操作
fopen(const char *path,const char *mode)
在这里插入图片描述
size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);
size_t fwrite(void *ptr, size_t size, size_t nmemb, FILE stream);
fread 从文件流 stream 中读取 nmemb 个元素, 写到 ptr 指向的内存中, 每个元素的大小为 size 个
字节。
fwrite 从 ptr 指向的内存中读取 nmemb 个元素, 写到文件流 stream 中, 每个元素 size 个字节。
所有的文件读写函数都从文件的当前读写点开始读写, 读写完以后, 当前读写点自动往后移动size
nmemb 个字节。
char buf[128]={0};
fread(buf,sizeof(char),5,fp);

fprintf 将格式化后的字符串写入到文件流 stream 中
int fprintf(FILE *stream, const char *format, …);

sprintf 将格式化后的字符串写入到字符串 str 中
int sprintf(char *str, const char *format, …);
char buf[200];
memset(buf,-1,sizeof(buf));
sprintf(buf,"%d %4.2f %s",num,score,name);

sscanf将字符串 str写入到各个类型的变量中,是sprintf的反向
int sscanf(char *str, const char *format, …);

sscanf(buf,"%d%f%s",&num,&score,name);

linux编程中,为了不用每次都输入头文件,节省编程时间,可以
sudo vim /usr/include/abc.h
对abc.h进行更改,将每次都要写的不停的在里面增加宏和头文件,之后编译文件,只要包含abc.h就够了。
例如用宏来简化i编程,main函数输入参数,会有一个例行检查在开头,既然每次都要写,不如写进头文件,编成宏。在头文件abc.h
#define ARGS_CHECK(argc,num) {if{argc!=num} {printf(“error args\n”};return -1;}}
函数执行是否成功 它的检查也可以写成宏
main函数中
ARGC_CHECK(argc,2)

abc.h中
#define ERROR_CHECK(ret,ret_suc,funcname) {if(ret==ret_suc) {perror(funcname);return -1}}
main.c中
ERROR_CHECK(ret,-1,“chmod”) ret是函数实际返回的值,-1是函数成功是应该返回的值,“chmod”是检测是否成功的函数,由于返回指针类型的函数成功时返回的指针值不好填入,不如失败时NULL普及,所以按照函数失败来进行设定判断条件

硬链接 ln a b 给a创造一个硬链接,其实就是给这块磁盘上的文件起了个别名,删除任何一个都不会对另一个产生影响
ln -s a b 给a创造一软连接,本质是给这个文件创建一快捷方式 a删除后,b就没用

切换python版本
update-alternatives --display python 查看版本
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
添加Python2可选项,优先级为1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.4 2 #添加Python3可选项,优先级为2
优先级大的默认先执行
sudo update-alternatives --config python 版本切换
sudo update-alternatives --remove python /usr/bin/python2.7 想要删除某个可选项

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值