文件编程:create函数

news/2024/7/24 12:13:58

例子:

#include <stdio.h>
#include <stdlib.h>

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

void create_file(char *filename)
{
	if(creat(filename,0755)<0)
	{
		printf("create file %s failure!\n",filename);
		exit(EXIT_FAILURE);  //EXIT_FAILURE = 1;  exit(STATE) 用于退出状态(成功还是失败)
	}
	else
	{
		printf("create file %s succes!\n",filename);
	}
}

int main(int argc, char* argv[] )
{
	int i;
	if(argc < 2)
	{
		perror("you havent't input the filename, please try again!\n");
		exit(EXIT_FAILURE);
	}

	for(i=1; i<argc; i++)
	{
		create_file(argv[i]);
	}

	exit(EXIT_SUCCESS);
}

着重说说不懂的点吧!

EXIT_FAILURE 在stdlib.h中有定义:

#define EXIT_FAILURE1 /* Failing exit status.  */
#define EXIT_SUCCESS0 /* Successful exit status.  */

主要是测试退出时,程序是成功退出还是失败退出。

main(int argc, char* argv[] ):

这个以前就头痛这个问题,argc是所有命令行参数和,但是我谁计算的,说它是就是了吗?

char* argv[]是一个数组指针,每个元素都是char 型的。

至于 perror:

范例:
测试环境:Linux,GCC
  #include <stdio.h>
  int main(void)
  {
  FILE *fp ;
  fp = fopen( "/root/noexitfile", "r+" );
  if ( NULL == fp )
  {
  perror("/root/noexitfile");
  }
  return 0;
  }
  运行结果:
  [root@localhost io]# gcc perror.c
  [root@localhost io]# ./a.out
  /root/noexitfile: No such file or directory



http://www.niftyadmin.cn/n/623078.html

相关文章

ubuntu 20 安装hyperf

首先看 hyperf 得安装环境 先安装PHP7.3以上 我安装了7.4 apt install php7.4-fpm php7.4-dev php7.4-mysql sudo apt install redis-server sudo apt install php-redis apt install nginx apt install mysql-server 顺手安装了mysql redis MySQL是8的 之后安装swoole 在码…

改变鼠标指针外观_电脑外设周边选购指南(一)——鼠标篇

最近很多朋友618买的新笔记本到了&#xff0c;新宝贝到位免不了要好好把玩一番&#xff0c;开心地打开电脑装上一些自己常用的软件或者爱玩的游戏&#xff0c;叫上朋友远程开上一把黑。仔细琢磨总感觉这笔记本似乎还差点什么东西&#xff0c;免费送的鼠标握感贼差不说&#xff…

ultraedit 自动缩进修改

/****************************************************************************************************************** 原文地址&#xff1a;http://www.cnblogs.com/xuxm2007/archive/2011/02/17/1957186.html 说明&#xff1a;。 *************************************…

hyperf 定义访问路由

其实文档对于路由这块写的已经非常清楚了&#xff0c; 只是记录一下。 通过配置文件定义路由 通过注解来定义路由 (主要用于自动生成路由) 通过 Controller 注解定义路由(更精细化的制定路由) // 原先indexController在外面&#xff0c; 挪到了里面的写法&#xff0c; 并且通过…

谈谈你对python生态的理解_计算机二级教程 Python语言程序设计 第8章python计算生态...

第八章学习知识导图考点主要是&#xff1a; 1) 基本的Python内置函数 2) 了解Python计算生态 3) 作者归纳&#xff1a;这章看一下基本概念&#xff0c;主要认真看一下代码和代码详解&#xff0c;建议大家认真钻研一下基本内置函数&#xff0c;但是二级python只考后文列出的32个…

文件编程:库函数fopen打开

这周学习 文件编程&#xff0c;第一遍学习的时候什么都不考虑&#xff0c;很快就过了&#xff0c;这次倒是遇到了很多问题&#xff0c;特别是权限判断的时候&#xff0c;老师讲的例子都是“可以”例子&#xff0c;当我把实验好后&#xff0c;我就想着让它“不可以"&#x…

hyperf 依赖注入

简单对象注入 通常来说&#xff0c;类的关系及注入是无需显性定义的&#xff0c;这一切 Hyperf 都会默默的为您完成&#xff0c;我们通过一些代码示例来说明一下相关的用法。 假设我们需要在 IndexController 内调用 UserService 类的 getInfoById(int $id) 方法。 <?php…

文件编程:格式化读fscanf()函数

这个也是C库中的函数&#xff0c;不过暂时没有发现有Linux系统调用中的对应功能的函数&#xff0c;格式化读---我还以为是输入一个"a"的话就可以读出它的ascii码来呢&#xff01;结果人家就不认识了。结果不是下边是个小例子代表我学习过了这个函数&#xff1a; #inc…