当前位置: 首页 > news >正文

北京做网站推广兼职网络营销软件商城

北京做网站推广兼职,网络营销软件商城,安阳网站建设方案,可视化网站建设软件有哪些第一题&#xff1a;预习 opendir 和 readdir函数 opendir 和 readdir 是两个在C语言&#xff08;特别是使用POSIX标准的系统&#xff0c;如Linux和UNIX&#xff09;中用于目录遍历的函数。这两个函数属于标准的C库中的目录操作部分&#xff0c;通常与<dirent.h>头文件一…

第一题:预习 opendir 和 readdir函数

opendir 和 readdir 是两个在C语言(特别是使用POSIX标准的系统,如Linux和UNIX)中用于目录遍历的函数。这两个函数属于标准的C库中的目录操作部分,通常与<dirent.h>头文件一起使用。下面详细介绍这两个函数的作用和用法。

opendir 函数

opendir 函数用于打开一个目录流,以便通过 readdir 函数读取目录内容。

函数原型

#include <dirent.h>  
#include <sys/types.h>  DIR *opendir(const char *name);
参数
  • name:指向以null结尾的字符串的指针,该字符串指定了要打开的目录的路径。

返回值

  • 成功时,返回一个指向DIR类型的指针,该指针代表打开的目录流。
  • 失败时,返回NULL,并设置errno以指示错误。

readdir 函数

readdir 函数用于读取目录流中的下一个目录项。

函数原型

#include <dirent.h>  struct dirent *readdir(DIR *dirp);
参数
  • dirp:指向之前通过opendir函数打开的目录流的指针。

返回值

  • 成功时,返回一个指向dirent结构的指针,该结构包含目录项的信息。
  • 读取到目录末尾或出错时,返回NULL。要区分这两种情况,可以检查errno或使用errno的包装函数,如feof(dirfd(dirp))(但注意,feof并不直接适用于目录流,这里只是提供一个类比)。实际上,当到达目录末尾时,errno不会被设置。

第二题:通过 opendir、readdir、write、read函数实现拷贝一个文件夹中的所有文件的功能(不考虑文件夹中还有文件夹的情况)

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <pthread.h>
#include <semaphore.h>
#include <wait.h>
#include <signal.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <sys/socket.h>
#include <sys/ipc.h>
#include <sys/sem.h>
#include <semaphore.h>
#include <sys/msg.h>
#include <sys/shm.h>
#include <sys/un.h>typedef struct sockaddr_in addr_in_t;
typedef struct sockaddr addr_t;
typedef struct sockaddr_un addr_un_t;int main(int argc, const char *argv[])
{if(access(argv[2],F_OK) == -1)//判断目标文件夹是否存在{mkdir(argv[2],0777);//不存在则创建目标文件夹}else//如果存在,则需要判断该文件是否为目录文件{struct stat buf={0};stat(argv[2],&buf);mode_t mode=buf.st_mode;if(S_ISDIR(mode) != 1){fprintf(stderr,"该文件不是一个目录文件!\n");return 1;}}DIR* df=opendir(argv[1]);if(dp == NULL){perror("opendir");return 1;}while(1){struct dirent* dt=readdir(df);if(dt == NULL){break;}if(strcmp(dt->d_name,".")==0 || strcmp(dt->d_name,"..")==0){continue;}chdir(argv[1]);//把工作目录切换到argv[1]里面int rfd=open(dt->d_name,O_RDONLY);if(rfd == -1){perror("ropen");}chdir("..");//把工作目录切换到上一级目录chdir(argv[2]);int wfd=open(dt->d_name,O_WRONLY | O_CREAT | O_TRUNC,0666);if(wfd == -1){perror("wopen");}chdir("..");while(1){char s[16]={0};int res=read(rfp,s,15);if(res == 0){breaak;}write(wfp,s,strlen(buf));}}close(rfp);close(wfp);closedir(df);return 0;
}

http://www.hkea.cn/news/556887/

相关文章:

  • 帮境外赌场做网站是否有风险百度企业号
  • 网站换了服务器百度seo排名优化公司哪家好
  • 海南网站建设制作网络营销效果评估
  • 飞阳建设网站上海广告公司
  • 营销网站导航栏常见网站搜索排名靠前
  • 深圳市政府网站官网百度地图疫情实时动态
  • 上海建设工程咨询网 首页深圳优化排名公司
  • 杭州哪个网站建设最好做网站的网络公司
  • 制作一个网站步骤东莞网络营销销售
  • 专业的营销网站建设公司百度联盟注册
  • 机械类网站用什么做背景指数运算法则
  • 微信如何绑定网站加速游戏流畅的软件
  • 茂名整站优化百度问答首页
  • 手机网站搭建网络宣传方式
  • 2003网站建设网站seo哪家公司好
  • 成都学校网站制作2022年国际十大新闻
  • 工厂外贸网站建设台州网络推广
  • 酒店网站建设方案策划百度seo怎么做网站内容优化
  • 网站更改公司需要重新备案吗搜索网页内容
  • 现在做网站还用dw做模板了吗成人电脑速成培训班
  • 做app要不要建网站刚开的店铺怎么做推广
  • 做生存分析的网站有哪些专业的网站优化公司
  • 网站双倍浮动百度联盟app
  • 北京网站设计确保代码符合w3c广州网络营销的推广
  • 做网站实名认证有什么用百度移动端模拟点击排名
  • 知更鸟wordpress 怎样沈阳百度seo关键词优化排名
  • 携程网站模板互联网营销策略有哪些
  • 做网站内链什么意思上海排名优化seobwyseo
  • 四川做直销会员网站百度网盘帐号登录入口
  • 做百度竞价对网站有无要求网站推广排名服务