2012-04-15 123 views
10

無效當我嘗試使用功能itoa(),我得到警告:功能itoa的隱式聲明是在C99

的功能隱式聲明是在C99無效。

我在頭上包含了stdlib.h。我試圖在一個函數內調用這個函數,我不確定這是否被允許。

+0

@maxflow:你在哪裏聲明'itoa'? – 2012-04-15 13:35:44

+0

@CharlesBailey我曾嘗試在main和inside函數中聲明itoa,並且我得到相同的錯誤。 – maxflow 2012-04-15 13:38:47

+0

只要你在使用它之前聲明它,你就不會得到你發佈的錯誤。請張貼代碼。 – 2012-04-15 13:56:31

回答

11

問題是itoa()不是標準函數。

你應該看看this link它給你一些可選的實施

+0

他的問題是itoa對鏈接器有效,但沒有c定義。聲明char * itoa(int,char *,int);應該解決問題。 – waynix 2017-03-27 08:36:19

2

即通常代替itoa使用另一種方法是sprintf/snprintf。這些是stdio.h的一部分。

相關問題