获取错误将char数组指针传递给C中的函数

时间:2013-02-09 06:30:54

标签: visual-c++

将char数组指针传递给C中的函数时出错。 我正在使用VC ++编辑器来构建它。

错误C3861:'DecodeData':找不到标识符

Decoder.h

int DecodeAudioBytes();

int DecodeData(int argc, char* argv[]);

Decoder.c

int DecodeAudioBytes()
{
char* argv[] = { "test", "test1" };

return DecodeData(2, argv);

}
int DecodeData( int argc, char* argv[] )
{
   char      speechOutFileName[ 150 ], bitInFileName[ 150 ];

   int args = 0;
   strcpy( bitInFileName, argv[ args ] );
   args++;
   strcpy( speechOutFileName, argv[ args ] );
   args++;

}

3 个答案:

答案 0 :(得分:0)

DecodeData

之前加上DecodeAudioBytes的定义

答案 1 :(得分:0)

我同意Forhad。

您也可以在之前只声明声明:

static int DecodeData(int argc, char* argv[])

int DecodeAudioBytes()
{
    char* argv[] = { "test", "test1" };

    return DecodeData(2, argv);

}
int DecodeData( int argc, char* argv[] )
{
}

当编译器发现标识符DecodeData对它一无所知时,就像之后声明的一样。

答案 2 :(得分:0)

此问题已解决。我忘了在“C”文件中包含头文件。

谢谢!