を返します。いくつかのフラグを付けてコピープログラムを作っています。私はコピーした後に小胞を切り捨てる必要があります。 これはそれのためのコードである:GCCは私の学校プロジェクトでエラーの '暗黙の宣言関数' truncate ''
int a_trunc(const char* infile, const char* size){
int s = strtol(size, NULL, 10);
truncate(infile, s);
return 0;
}
GCCはエラーを返す:「関数の暗黙の宣言は 『』」切り捨てます。
私はsys/types.hとunistd.hを持っています。
私はフラグでコンパイルしています:お時間を -std = c99を-Wall -Werror
感謝を。
フラグ-std = gnu99でコンパイルを試したことがありますか? –
また、-std = c99 -D_GNU_SOURCEで試してください –
"GNUモード" '-std = gnu90'(GCCバージョン5までのデフォルト設定)で動作するGCCコンパイラは標準ライブラリ内のすべての形式の非標準ジャンクをダンプします。これはC標準では許可されていないため、標準Cとしてコードをコンパイルするように指示すると、非標準の迷惑メールが削除されます。可能であれば、このケースではあまりにも多くのビットを削除します。 POSIXはここで標準Cと衝突する傾向がありますが、なぜそうかもしれません。 – Lundin