0730作业+梳理

一、作业

代码:

#include<myhead.h>
int main(int argc, const char *argv[])
{
    //判断文件个数
    if(argc != 3)
    {
        write(2,"input file error\n",sizeof("input file error\n"));
        return -1;
    }
    int fd1 = -1;
    int fd2 = -1;
    //以只读形式打开源文件
    if((fd1 = open(argv[1],O_RDONLY))==-1)
    {
        perror("open fd1 error");
        return -1;
    }
    //以只写的形式打开目标文件
    if((fd2 = open(argv[2],O_WRONLY|O_CREAT|O_TRUNC,0664))==-1)
    {
        perror("open fd2 error");
        return -1;
    }
    char buf = 0;//定义搬运工
    //也可以是buf[128],用字符串的话下面read和write不需要取址
    int res = 0;//判断是否全部被读取
    while(1)
    {
        res = read(fd1,&buf,sizeof(buf));
        if(res ==0)
        {
            return -1;
        }
        if(buf>=65&&buf<=90)
        {
        buf = buf+32;//把字符转换为小写格式
        }else if(buf>=97&&buf<=122)
        {
            buf = buf-32;//把字符转换为大写格式
        }
        write(fd2,&buf,res);
    }
    printf("加密成功\n");
    //关闭文件
    close(fd1);
    close(fd2);
    return 0;
}
 

运行:

二、思维导图(文件IO,文件属性函数)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3279631.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

图片的存储

1.更换头像 //里面内容是调用方法将选择的电脑图片存储进字节数组&#xff0c;在转发给服务端&#xff0c;在服务端中进行保存。 void changeimageButtonOnAction(ActionEvent event)throws IOException, ClassNotFoundException, SQLException {FileChooser fileChooser n…

30岁决心转行,AI太香了

今天是一篇老学员的经历分享&#xff0c;此时的王同学在大洋彼岸即将毕业&#xff0c;手握多家北美大厂offer&#xff0c;一片明媚。谁能想到王同学的转码之路竟始于一场裁员&#xff0c;这场访谈拉开了他的回忆。 最近总刷到一些关于转行的话题&#xff0c;很多刚毕业的同学喜…

【Golang 面试 - 进阶题】每日 3 题(八)

✍个人博客&#xff1a;Pandaconda-CSDN博客 &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/UWz06 &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 Golang 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞&#x1f44d;收藏…

物理数据库迁移到云上

物理数据库迁移到云上 物理数据库迁移到云上通常需要以下步骤: 评估和规划 评估物理数据库的需求和约束条件&#xff0c;确定迁移的目标。考虑数据库大小、性能要求、数据复杂性等因素&#xff0c;选择合适的云服务提供商和服务模式。 设置云环境 在云平台上创建适当的虚拟…

Anaconda配置记录-linux环境

Anaconda Distribution 是一个 Python/R 数据科学分发&#xff0c;其中包含&#xff1a; conda - 用于命令行界面的包和环境管理器 Anaconda Navigator - 基于 conda 构建的桌面应用程序&#xff0c;具有从托管环境中启动其他开发应用程序的选项 超过 300 个自动安装的软件包…

嵌入式初学-C语言-八

#接嵌入式初学-C语言-七# 分支结构 分支结构&#xff1a;又被称之为选择结构 选择结构的形式 多分支 语法&#xff1a; if(条件1) { 语句1; } else if(条件2) { 语句2; } ... else { 语句n1; }案例&#xff1a; #include <stdio.h> int main() { // 需求&#xff…

Java中适配Redis单机和集群模式

/** * 根据配置创建Redis连接工厂 * 支持单机和集群模式 * */ application.properties配置文件 Redis配置类&#xff1a; package com.t6bi.carrier.app.config;import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.context.annotat…

鱼眼相机在FOV比较大时, undistortPoint() 和 undistortImage() 结果相差很大

在做鱼眼图像矫正时&#xff0c;碰到一个很有意思的情况&#xff0c;即在鱼眼相机FOV比较大时&#xff0c; undistortPoint() 和 undistortImage()对应点的结果不一致。 两个函数的调用如下&#xff1a; 浅蓝色的点是画在原始图像上的。 浅蓝色的点随着图像undistortImage()矫…

科大讯飞语音转写demo go语言版

上传了一个语音文件&#xff0c;识别效果。 package audioimport ("bytes""crypto/hmac""crypto/md5""crypto/sha1""encoding/base64""encoding/json""fmt""io/ioutil""net/http"…

商用密码测评之对HTTPS(TLS)协议中各个参数解释

1、TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 是一个广泛使用的TLS&#xff08;传输层安全协议&#xff09;加密套件&#xff0c;它结合了多种技术和算法来确保网络通信的安全。下面是对该加密套件中各个参数的详细解释&#xff1a; 1. TLS 定义&#xff1a;TLS&#xff08;传…

Spring源码-加载配置文件spring-${username}.xml变量名的解析

启动类: ApplicationContext ac new ClassPathXmlApplicationContext("spring-${username}.xml");Person bean ac.getBean(Person.class);调用链路如下&#xff1a; parseStringValue:130, PropertyPlaceholderHelper (org.springframework.util) replacePlacehold…

【Linux】make/Makefile的理解

1.make是一个命令&#xff0c;makefile是一个文件, 依赖关系和依赖方法. a.快速使用一下 i.创建一个Makefile文件(首字母也可以小写) b.依赖关系和依赖方法 i.依赖关系: 我为什么要帮你? mybin:mytest.c ii.依赖方法: 怎么帮? gcc -o mybin mytest.c make之前要注意先创建…

Pinely Round 4 (Div. 1 + Div. 2)(A~D)

A. Maximize the Last Element 思路: 签到题,判断每个数前面和后面数的数量能否被2整除,如果都能就可以得到,然后求最大值就行 代码: #include<bits/stdc.h> #include <unordered_map> using namespace std; #define N 200010 typedef long long ll; typedef un…

【源码阅读】Redisson lock源码

Redisson 加锁非常简单&#xff0c;还支持 redis 单实例、redis 哨兵、redis cluster、redis master-slave 等各种部署架构 RLock lock redisson.getLock("cyk-test"); lock.lock(); lock.unlock(); 底层原理 加锁机制 废话不多说&#xff0c;直接看源码&#xf…

从 Pandas 到 Polars 三十九:Polars 和 Matplotlib

Polars 与 matplotlib 配合得很好。 在matplotlib中&#xff0c;你可以直接使用polars的数据进行绘制图形&#xff0c;而无需把polars的dataframe转为pandas的dataframe&#xff1a; import polars as pl import matplotlib.pyplot as plt# 创建一个polars DataFrame df_pl …

店铺销售数据中心大屏,引领智慧决策新风尚

为了精准把握市场动态&#xff0c;高效驱动业务增长&#xff0c;越来越多的商家开始拥抱“智慧零售”的浪潮&#xff0c;山海鲸可视化搭建的店铺销售数据中心大屏&#xff0c;以直观、智能、高效的方式&#xff0c;为商家开启了一扇通往未来商业视界的大门。 想象一下&#xff…

探索目标检测算法:科技核心的力量

1. 引言 - 目标检测算法的重要性 在当今的科技时代&#xff0c;计算机视觉技术已经渗透到我们生活的方方面面。从自动驾驶汽车、无人机监控、智能安防、医疗影像分析到工业自动化&#xff0c;目标检测算法作为计算机视觉领域的核心技术之一&#xff0c;其重要性不言而喻。目标检…

01 - 计算机组成原理与体系结构

文章目录 一&#xff0c;计算机系统硬件基本组成硬件软件 二&#xff0c;CPU的功能与组成功能组成运算器控制器 三&#xff0c;数据表示计算机的基本单位进制转换原码&#xff0c;反码&#xff0c;补码&#xff0c;移码数值表示范围浮点数表示 四&#xff0c;寻址五&#xff0c…

《LeetCode热题100》---<双指针篇四道②>

本篇博客讲解LeetCode热题100道双指针篇中的 第三道&#xff1a;三数之和&#xff08;中等&#xff09; 第四道&#xff1a;接雨水&#xff08;困难&#xff09; 第三道&#xff1a;三数之和&#xff08;中等&#xff09; 法一&#xff1a;暴力枚举&#xff08;三重循环&#x…

LYT-Net——轻量级YUV Transformer 网络低光照条件图像修复

1.引言 近年来&#xff0c;基于深度学习的解决方案在图像增强领域取得了成功。本文介绍了LYT-Net&#xff0c;即轻量级YUV Transformer 网络&#xff0c;作为一种新的低光图像增强方法。所提出的架构与传统的基于Retinex的模型不同&#xff0c;它利用YUV颜色空间对亮度&#x…