sprintf (преобразование int в char [])

В моей программе я пытаюсь преобразовать int в char [20];

Я пытаюсь сделать это следующим образом:

  char str[20];    
  sprintf(str, "%d", timer);

в котором таймер является int.

Но когда я создаю этот код, я получаю следующие предупреждения.

Type implicit declaration of function 'sprintf' [-Wimplicit-function-declaration]   
incompatible implicit declaration of built-in function 'sprintf' [enabled by default]   

что это значит?

note :( Я включил string.h и stdlib.h).


отлично, я добавил stdio.h в свой код, и теперь предупреждения исчезли только для того, чтобы дать мне еще более сложную ошибку.

неопределенная ссылка на `_sbrk '

2
nl ja de

3 ответы

You have to #include to use sprintf()

3
добавлено
да, он был, и я очень большой. Я даже не могу принять его реактивный самолет, он был слишком быстрым: P
добавлено автор Bart Teunissen, источник
Да, ты быстро.
добавлено автор Terrance, источник

вы хотите, чтобы вы также добавили ссылку на

stdio.h
см. эту ссылку

2
добавлено

Вероятно, вам нужно поставить sprintf (str, «% d», таймер) внутри функции (а не на глобальную часть исходного кода).

Что-то вроде:

#include 
char str[20];
// SPOT #1
int f() {
    sprintf(str, "%d", timer);//this won't work if placed on SPOT #1
}
0
добавлено
он внутри функции ... так что это определенно не так. :)
добавлено автор Bart Teunissen, источник