警告: 指定したファイルを標準出力するだけ
■単純なcat風コマンド
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <stdlib.h>
static void cat(FILE *fp){
char buf[BUFSIZ];
while(fgets(buf,BUFSIZ,fp) != NULL){
fputs(buf,stdout);
}
}
int main(int argc,char *argv[]){
if(argc < 2){
fprintf(stderr,"Usage:./a.out file.c...\n");
exit(1);
}
for(int i = 1; i < argc ;i++){
FILE *fp = fopen(argv[i],"r");
if(fp == NULL){
perror(argv[i]);
exit(1);
}
cat(fp);
fclose(fp);
}
}
こんな時に役に立ちます。
(1)forとwhileどちらを使うか悩んだ時
(2)fgets()の引数の順番を忘れた時
(3)fputs()の引数の順番を忘れた時
(4)i < argcか、i < =argcか忘れた時