電子書籍の厳選無料作品が豊富!

C++でsprintfを使用したところ"定義されていない識別子です"
とエラーがでます。
stdio.h/windows.hはインクルードしています。
OSはwin2000です。

A 回答 (4件)

stdio.hでもwindows.hでもsprintfは定義されていると思います。

    • good
    • 0

sprintfってstringをインクルードしないといけないんじゃないかな?

    • good
    • 0

sprintfはANSI-C標準関数です。


(C89,C99ともにサポート)

エラーが出る状況がわからないと何が起こっているのかわかりません。

エラーの出るソースそのもの(抜粋でかまいません)とコンパイラ名/バージョンを教えてください。
    • good
    • 0

素人です Borland C++ 5.5.1 for Win32 では下記のソースがコンパイルと


実行が出来ました、問題ないみたいです。

#include <stdio.h>

void main()
{
char p[100];

sprintf(p,"abcdef\n");
puts(p);
}

sprintf関数は私の持っているC言語の解説書には実は載っていません。

しかしボーランドのコンパイラのヘルプには解説がありました、sprintf
は、たぶん標準関数ではないので処理系によってサポートされることもあ
れば、サポートされないこともあると言うことなのでしょう。

C++だからという事ではないと思います。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!