文件的变量字符串名称不起作用?

时间:2015-10-06 00:49:37

标签: c

所以我正在尝试编写一个函数,根据调用它的时间打开一个不同的文件,但当我检查我正在尝试使用的文件名时,我得到一个奇怪的非acii字符,必须是一个snprint的问题。

char name[20];
sprintf(name,"file_part%d", 6); //likely problem here.
FILE *file=fopen(name,"r"); //this doesn't work
printf("name is : %s", name); // and this prints a weird symbol on the terminal

1 个答案:

答案 0 :(得分:2)

printf("name is : %c", name); // and this prints a weird symbol on the terminal

%c格式说明符用于打印字符,但name是由ASCII nul(也称为C样式字符串)终止的字符数组。对于字符串,请使用%s,而不是%c