Я делаю версию крота (Atari 1979) в C. Мне нужно включить таймер в моей игре, а затем напечатать на экране.
Я использую SDLDrawLine, потому что у меня есть вектор, который представляет мои символы. Мне нужен мой код для запуска строки символов, это хорошо. Я использую функцию sprintf, чтобы преобразовать число в строку символов, чтобы вывести его на экран.
char aux_str[MAX_VALUES];
sprintf(aux_str,"%d",*value);
for(j=0;j<strlen(aux_str);j++){
*tam_caracter_numero = letra_a_longitud(aux_str[j]);
*ptr_valor = letra_a_vector(aux_str[j]);
for(i=0;i<*tam_caracter_numero-1;i++){
SDL_RenderDrawLine(
renderer,
(*ptr_valor)[i][0] * escalado + pos_x,
-(*ptr_valor)[i][1] * escalado + pos_y,
(*ptr_valor)[i+1][0] * escalado + pos_x,
-(*ptr_valor)[i+1][1] * escalado + pos_y
);
}
Это работает правильно, но мне нужно, чтобы мой таймер начинался с 0000, меняя его на 0001,0002, .... Но когда я преобразую свой номер в строку, используя sprintf, результат равен только 1 и не печатается де 0с. Есть какая-то функция или способ сделать это возможным? Что пусть начнется в 0000?