Строки, основанные на переменных - PullRequest
1 голос
/ 14 апреля 2020

Скажем, у меня есть переменные double x, y, z;, и я хочу создать txt-файл с именем, основанным на этих переменных, например, "GenericName_x_y_z.txt".

Как мне создать строку?

Я знаю такие функции, как printf("GenericName_%.2f_%.2f_%.2f.txt", x, y, z), которые вы можете выполнять, но как бы я определял такую ​​строку, а не просто печатал ее?

Так что тогда я могу использовать

char filename[] = "GenericName_%.2f_%.2f_%.2f.txt";

FILE* fPointer;
fPointer = fopen(filename, "w");

Я извините, формулировка действительно ужасна и, вероятно, это действительно базовая c вещь, которую я не получаю!

Спасибо

1 Ответ

3 голосов
/ 14 апреля 2020

Вы ищете snprintf():

char filename[128];
snprintf(filename, sizeof(filename), "GenericName_%.2f_%.2f_%.2f.txt", x, y, z);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...