2010-02-15 53 views
3

我需要创建具有相同名称的文件,但在文件名末尾附加一个数字以表明它是第n个文件。因此,在for循环中,我基本上要做到这一点:在C中创建编号文件

char *filename = "file"; 
strcat(filename, i); // put the number i at the end of the filename 

显然是不这样做的方式,但任何想法,我怎么能完成这个任务?

感谢,
斯托伊奇

回答

2

这样的事情呢?

char filename[256]; 
int i = 1; 

// codes omitted... 
sprintf(filename, "file%4d", i); 
+4

除非你喜欢文件名中的空格,否则最好使用'%04d' – mouviciel 2010-02-15 09:25:51

+0

@mviciel是的,那正是我想要输入的内容,我的手指不听我的。 :P – shinkou 2010-02-15 09:30:15

+0

非常感谢! – Hristo 2010-02-15 10:02:06

3

sprintf()snprintf()"file%d"

+1

如果不是SO的简短回答限制(如果您编辑的速度太快,则为验证码),我会是第一个。哎呀! :-) – 2010-02-15 09:25:04

1

您可以使用sprintf。