2025
11
06
2012
04
23
行末に特定ワードを付け加えるプログラム(C言語)
レジスタダンプするのに使いました。
ソースコード
/* tail_add.c */
#include <stdio.h>
#include <string.h>
#define STR_MAX 256
#define OUTPUT_FILE "output_tail.txt"
void usage(void)
{
printf("usage: ./tail_add [input_file] [add_word]\n");
printf("result: %s\n", OUTPUT_FILE);
}
int main(int argc, char *argv[])
{
int len;
char str[STR_MAX], add_word[STR_MAX];
FILE *fin, *fout;
if (argc < 3) {
usage();
return 1;
}
if ((fin = fopen(argv[1], "r")) == NULL) {
printf("fin error:[%s]\n", argv[1]);
return -1;
}
if ((fout = fopen(OUTPUT_FILE, "w")) == NULL) {
printf("fout error:[%s]\n", OUTPUT_FILE);
fclose(fin);
return -1;
}
/* adjustment */
strcpy(add_word, argv[2]);
len = strlen(add_word);
add_word[len] = '\n';
add_word[len+1] = '\0';
for(;;) {
if (fgets(str, STR_MAX, fin) == NULL) {
break; /* EOF */
}
len = strlen(str);
str[len-1] = '\0';
strcat(str, add_word);
fputs(str, fout);
}
fclose(fin);
fclose(fout);
return 0;
}
コンパイル例
gcc -Wall -o tail_add tail_add.c
使い方
./tail_add [input_file] [add_word]
検索用タグ C言語
PR
2012/04/23 (Mon.) Comment(0) C言語
Comments
