なんとな~くしあわせ?の日記

「そしてそれゆえ、知識そのものが力である」 (Nam et ipsa scientia potestas est.) 〜 フランシス・ベーコン

文字列配列

Cで画像の名前の変更ができないかなあと思い、書いてみる。まずは名前を連番で生成してみた。

/*
 * vecter.c
 *
 *  Created on: 2011/05/03
 *      Author: Kuzutetsu
 */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

/* 生成する名前の数 */
/* とりあえず999までを想定 */

#define SUMNUM 100

int main(int args, char *argv[]){

	int i=0;
	char tmp[64];
	char zerozero[] = "00";
	char zero[] = "0";
	char str_array[SUMNUM][32];
	for(i;i<SUMNUM;i++){
		sprintf(tmp, "%d", i);

		if(i<10){
			strcpy(str_array[i], zerozero);
			strcat(str_array[i], tmp);
			strcat(str_array[i],".jpg");
			printf("%s\n",str_array[i]);
		}
		else if(i<100){
			strcpy(str_array[i], zero);
			strcat(str_array[i], tmp);
			strcat(str_array[i],".jpg");
			printf("%s\n",str_array[i]);
		}
		else{
		strcpy(str_array[i], tmp);
		strcat(str_array[i],".jpg");
		printf("%s\n",str_array[i]);
		}
	}

	return 0;
}

実行結果。

000.jpg
001.jpg
002.jpg
003.jpg
004.jpg
005.jpg
006.jpg
007.jpg
008.jpg
009.jpg
010.jpg
…
090.jpg
091.jpg
092.jpg
093.jpg
094.jpg
095.jpg
096.jpg
097.jpg
098.jpg
099.jpg