Запись целого числа в файл с fputs ()

Не возможно сделать что-то как fputs(4, fptOut); потому что fputs не нравятся целые числа. Как я могу работать вокруг этого?

Выполнение fputs("4", fptOut); не опция, потому что я работаю со встречным значением.

9
задан Pieter 9 February 2010 в 13:34
поделиться

3 ответа

Перечисления также обеспечивают большую гибкость. Поскольку Enums по существу являются классами, их можно дополнить полезными методами (например, предоставить интернационализированную строку ресурсов, соответствующую определенному значению в перечислении, преобразовать назад и вперед между экземплярами типа enum и другими представлениями, которые могут потребоваться, и т.д.)

-121--2132463-

Как насчет

fprintf(fptOut, "%d", yourCounter); // yourCounter of type int in this case

Документация по fprintf можно найти здесь .

19
ответ дан 4 December 2019 в 07:47
поделиться

Предоставленные ответы верны. Однако, если вы намерены использовать 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;
}
4
ответ дан 4 December 2019 в 07:47
поделиться
fprintf(fptOut, "%d", counter); 
4
ответ дан 4 December 2019 в 07:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: