如何将数字打印到char数组中?

时间:2012-05-20 22:17:55

标签: c

我正在与allegro开发pacman游戏(在Ubuntu中),但我无法显示分数。我找到了这段代码,但它不起作用。你能帮帮我吗?

char scoretxt[10];
printf(scoretxt,"score: %d",score);
textout_ex(buffer, font, scoretxt, TILE_SIZE*(MAP_WIDTH)*3/4, TILE_SIZE, makecol(255,255,255), makecol(0,0,0));

1 个答案:

答案 0 :(得分:5)

您应该使用snprintf,而不是printf

snprintf(scoretxt, 10, "score: %d", score);

此处10是缓冲区scoretxt的长度,以确保snprintf不会在分配的数组之外写入。