Не возможно сделать что-то как fputs(4, fptOut);
потому что fputs не нравятся целые числа. Как я могу работать вокруг этого?
Выполнение fputs("4", fptOut);
не опция, потому что я работаю со встречным значением.
Перечисления также обеспечивают большую гибкость. Поскольку Enums по существу являются классами, их можно дополнить полезными методами (например, предоставить интернационализированную строку ресурсов, соответствующую определенному значению в перечислении, преобразовать назад и вперед между экземплярами типа enum и другими представлениями, которые могут потребоваться, и т.д.)
-121--2132463-Как насчет
fprintf(fptOut, "%d", yourCounter); // yourCounter of type int in this case
Документация по fprintf
можно найти здесь .
Предоставленные ответы верны. Однако, если вы намерены использовать fputs, вы можете сначала преобразовать свой номер в строку, используя sprintf. Примерно так:
#include <stdio.h>
#include <stdint.h>
int main(int argc, char **argv){
uint32_t counter = 4;
char buffer[16] = {0};
FILE * fptOut = 0;
/* ... code to open your file goes here ... */
sprintf(buffer, "%d", counter);
fputs(buffer, fptOut);
return 0;
}