一、strstr

1.头文件

 #include <string.h>

2.函数原型

char *strstr(const char *haystack, const char *needle);

3.功能

在一个字符串haystack中查找另一个字符串needle的第一次出现,并返回该位置的指针,如果找不到,则返回NULL。

4.代码示例

输入一个文件名 *.h 找文件中,所有的#define 。

找到后,按如下格式输出 #define PI 3.14 /home/linux/1.h 25 -----宏的内容 文件名 行号

#include <stdio.h>
#include <stdlib.h>
#include <string.h>// ./a.out srcfile
int	main(int argc, char **argv)
{if(argc<2){printf("usage:%s srcfile\n",argv[0]);return 1;}//   1.h  123.h   aaa.h   1.23.4.h  1char*end = argv[1];end = &end[strlen(end)-2];if(strlen(argv[1])<=2  && 0!= strcmp(end,".h")){printf("pls input head file\n");return 1;}FILE* fp = fopen(argv[1],"r");if(NULL == fp){printf("fopen error\n");return 1;}int num =1;while(1){char buf[512]={0};if(NULL == fgets(buf,sizeof(buf),fp)){break;}if(strstr(buf,"#define")){buf[strlen(buf)-1]='\0';printf("%s %s %d\n" ,buf,argv[1],num);}num++;}fclose(fp);//system("pause");return 0;
}

二、symlink

1.头文件

#include<unistd.h>

2.函数原型

int symlink(const char *target,const char *linkpath);

3.功能

创建一个链接向oldpath文件的新符号链接文件

4.命令行

链接文件:file.txt -> hello.c

软链接文件、符号链接文件

eg:In -s 123 softlink (快捷方式) 

5.代码实现

#include <stdio.h>
#include <unistd.h>int	main(int argc, char **argv)
{//复制到的路径需要设置一个文件名//即/home/linux/Desktop/1.txt而不是/home/linux/Desktopint ret=symlink("/home/linux/1.txt", "/home/linux/Desktop/1.txt");if(-1==ret){printf("symlink error\n");return 1;}// system("pause");return 0;
}

三、remove

1.函数原型

int remove(const char *pathname);

2.功能

删除一个文件

3.参数

pathname:删除文件的路径

4.返回值

成功返回0
失败返回-1

5.代码实现

#include <stdio.h>
int main(int argc, char **argv)
{int ret = remove("/home/linux/Desktop/1.txt");if (-1 == ret){printf("remove error\n");return 1;}// system("pause");return 0;
}

四、rename

1.命令行

mv  /  rename

2.函数原型

int  rename(const  char  *oldpath,  const char *newpath);

3.功能

将一个老的路径名改为新的路径

4.参数

oldpath:老路径名
newpath:新路径名

5.返回值

成功返回0
失败返回-1

6.代码实现

#include <stdio.h>int main(int argc, char **argv)
{int ret = rename("4.txt", "3.txt");if (-1 == ret){printf("rename error\n");return 1;}// system("pause");return 0;
}

五、link 

ln 1 2 

1.头文件

 #include <unistd.h>

 2.函数原型

int  link(const char *oldpath, const char *newpath);

3.功能

创建一个硬链接文件

4.参数

oldpath:要链接向的文件
newpath:创建的新硬链接文件

5.返回值

成功返回0
失败返回-1

5.代码实现

#include <stdio.h>
#include <unistd.h>int	main(int argc, char **argv)
{int ret=link("3.txt", "4.txt");if(-1==ret){printf("link error\n");return 1;}// system("pause");return 0;
}

六、truncate

1.头文件

  #include <unistd.h>#include <sys/types.h>

2.函数原型

int truncate(const char *path, off_t length);

3.功能

出错相关函数接口

截断文件

4.参数

path:文件路径

length:截断后文件长度

5.代码实现

#include<stdio.h>
#include <unistd.h>
#include <sys/types.h>int	main(int argc, char **argv)
{int ret=truncate("3.txt",264);if(-1==ret){printf("truncat error\n");return 1;}// system("pause");return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/87459.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/87459.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/87459.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

智能设备远程管理:基于OpenAI风格API的自动化实践

在数字化转型的浪潮中&#xff0c;智能设备的远程管理功能变得越来越重要。通过API接口实现对智能设备的自动化操作&#xff0c;不仅可以提高工作效率&#xff0c;还可以增强系统的灵活性和可扩展性。本文将详细介绍如何利用Python和openai库&#xff0c;结合一个类似OpenAI风格…

数字电路工作原理

1、数字电路的分类 2、基本结构和特点 3、电路特性 4、电路互连 5、电路选型基本原则 1、数字电路的分类 GaAs 该电路类型 速度快,功耗大,原料剧毒,至今尚未被大量应用 硅 出现了单极型 PMOS NMOS CMOS 双极性 TTL STTL、LSTTL、ALSTTL、FTTL、LVTTL ECL MEC…

C# 进行音视频编解码开发

一、音视频编解码基础 1.1 基本概念 音视频编解码是数字媒体处理的核心技术,主要涉及将原始音视频数据进行压缩编码以便存储和传输,以及将压缩数据解码为可播放的原始格式。在 C# 环境下开发音视频编解码器,需要先了解几个关键概念: 编码 (Encoding):将原始音视频数据转…

YOLOv11深度解析:Ultralytics新一代目标检测王者的创新与实践(附网络结构图+训练/推理/导出全流程代码详解)

🔥 一、YOLOv11为何成为新标杆? 2024年底,Ultralytics正式推出YOLOv11,在COCO数据集上以更少参数量(减少22%) 实现了超越YOLOv8的精度,成为边缘设备与云端部署的新宠。其核心创新在于: 轻量化设计:深度可分离卷积(DWConv)大幅降低计算量注意力增强:C2PSA模块提升…

live server插件vscode的配置

安装完其实就可以直接使用了&#xff0c;一般来说不必手动配置&#xff0c;点击右下角的go live按钮就可以运行。默认端口是5500 好的&#xff0c;为你详细说明如何在 VS Code 中配置 Live Server 插件。这是一个非常有用的插件&#xff0c;我们不仅会讲如何安装和使用&#x…

基于MATLAB的风力发电机无人机巡检路径优化研究

基于MATLAB的风力发电机无人机巡检路径优化研究 摘要 本文针对风力发电机无人机巡检路径优化问题,提出了一种基于三维参数建模与智能优化算法的解决方案。通过建立风力发电机的三维几何模型,综合考虑无人机的飞行约束条件和巡检任务需求,设计了多目标优化函数,并采用改进…

经纬度哈希编码实现方式

背景&#xff1a;在大数据数仓建设的过程中&#xff0c;有时会遇到经纬度类型的数据信息&#xff0c;但在进行关联分析和数仓建设的时候用经纬度去关联&#xff0c;难免不够便捷&#xff0c;于是我们可以开发UDF使用地理经纬度信息哈希编码的方案进行开发&#xff0c;非常有效 …

支持向量机(SVM)深度解析:从数学根基到工程实践

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家、CSDN平台优质创作者&#xff0c;高级开发工程师&#xff0c;数学专业&#xff0c;10年以上C/C, C#, Java等多种编程语言开发经验&#xff0c;拥有高级工程师证书&#xff1b;擅长C/C、C#等开发语言&#xff0c;熟悉Java常用开…

矩阵的范数和逆矩阵的范数的关系

文章目录 前提条件关键结论推导过程简述注意事项示例说明&#x1f4d8; 谱范数定义✅ 步骤一&#xff1a;计算 A T A A^T A ATA✅ 步骤二&#xff1a;求 A T A A^T A ATA 的特征值✅ 步骤三&#xff1a;取最大特征值的平方根✅ 对 A − 1 A^{-1} A−1 做同样的操作✅ 最终结…

成像光谱遥感技术中的AI革命:ChatGPT在遥感领域中的应用

课程将最新的人工智能技术与实际的遥感应用相结合&#xff0c;提供不仅是理论上的&#xff0c;而且是适用和可靠的工具和方法。无论你是经验丰富的研究人员还是好奇的从业者&#xff0c;本课程都将为分析和解释遥感数据开辟新的、有效的方法&#xff0c;使你的工作更具影响力和…

Debian12 安装 sippts

试了试&#xff0c;貌似不复杂&#xff0c;记录如下&#xff1a; apt-get install -y python3 python3 --version # 3.11.2 apt-get install -y python3-pip pip3 --version # 24.3.1 rm /usr/lib/python3.11/EXTERNALLY-MANAGED cd /usr/src git clone https://github.com/…

VR Panorama 360 PRO Renderer保姆级别教程

总览: 全景图及全景视频录制插件有两个 一个是件(以下简称VR360插件) 一个是Unity官方的Unity Recorder插件(以下简称Recorder插件) 在图片清晰度上VR 360插件要高于Recorder插件,所以渲染全景图时,优先使用VR 360插件,当然全景视频也可以使用VR360插件。 但VR 360插件…

cv610将音频chn0配置为g711a,chn1配置为 aac编码,记录

cv610将音频chn0配置为g711a,chn1配置为 aac编码,记录 工程代码在文章底部 编译时放在 sdk的同级目录 sdk_version: sdk_V010,打了AOV的补丁 aenc可以配置为 chn0=g711a, chn1=aac 设置两个编码通道为不同编码属性 主要思路为在 ss_mpi_aenc_create_chn时将 chn1配置编码为…

CAD2018,矩形设计,新增文字,块新增与打散

一、矩形设计 1.选择页面&#xff0c;点击左键&#xff0c;直接输入【rec】&#xff0c;回车&#xff1b; 2.长按鼠标左键&#xff0c;拉出矩形&#xff0c;抬起左键。 3. 会生成一个矩形框。 4. ①输入宽度数值&#xff0c;②输入逗号切换到高度&#xff0c;③输入高度。 5.成…

day047-部署我的世界-java版服务器

文章目录 1. 官方地址2. Ubuntu配置服务端2.1 下载服务端jar包&#xff0c;并上传2.2 安装jdk2.3 启动服务端2.4 设置云安全组 3. 客户端-我的世界启动器 1. 官方地址 官方服务端下载地址&#xff1a;[Minecraft 服务器下载 | Minecraft](https://www.minecraft.net/zh-hans/d…

飞算JavaAI:精准切中开发者痛点,专治“AI生成代码不可用、逻辑混乱”的顽疾

飞算JavaAI&#xff1a;精准切中开发者痛点&#xff0c;专治“AI生成代码不可用、逻辑混乱”的顽疾 一、前言二、关于飞算JavaAI2.1 飞算JavaAI来源2.2 飞算JavaAI超能力 三、飞算JavaAI我的另一半3.1 Idea安装配置3.2 Main方法写个九九乘法表3.3 Main方法写个冒泡排序3.4 老项…

伞兵 钓鱼的肝

题目描述 为了在敌国渗透作战&#xff0c;指挥官决定&#xff1a;派出伞兵前往敌国&#xff01;然而敌国的风十分强烈&#xff0c;能让伞兵在同一高度不停转悠&#xff0c;直到被刮到一个无风区…… 输入格式 第一行两个整数 n,m&#xff0c;表示敌国的大小。 以下 n 行&am…

GoFastDFS:轻量级高性能分布式文件存储解决方案(Linux安装部署)

一、GoFastDFS概述 GoFastDFS是一个基于HTTP协议的分布式文件存储系统&#xff0c;采用Go语言开发&#xff0c;具有轻量级、高性能、易部署等特点。它专为互联网应用设计&#xff0c;特别适合图片、视频、文档等中小文件的存储与分发场景。 它基于大道至简的设计理念&#xf…

python 原型污染 perl符号表污染 -- Google 2025 MYTHOS

题目实现了一个Game,分为前后端 part 1 前端存在明显原型污染 def copy(src, dst):for k, v in src.items():if hasattr(dst, "__getitem__"):if dst.get(k) and type(v) dict:copy(v, dst.get(k))else:dst[k] velif hasattr(dst, k) and type(v) dict:copy(v, ge…

数据结构day4——栈

目录 一、栈的核心概念 什么是栈&#xff1f; 栈的核心特性 二、栈的基本操作 三、C 语言实现栈的两种方式 1. 顺序栈&#xff08;基于数组实现&#xff09; 实现代码 顺序栈的优缺点 2. 链式栈&#xff08;基于链表实现&#xff09; 实现代码 链式栈的优缺点 四、…