-1

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

错误 C3861:“DecodeData”:未找到标识符

解码器.h

int DecodeAudioBytes();

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

解码器.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++;

}
4

3 回答 3

0

我同意福哈德。

你也可以只把声明放在前面:

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

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

    return DecodeData(2, argv);

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

当编译器发现标识符DecodeData对它一无所知时,它会在之后声明。

于 2013-02-09T06:35:55.650 回答
0

DecodeData之前的定义DecodeAudioBytes

于 2013-02-09T06:32:06.797 回答
0

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

谢谢!

于 2013-02-09T07:20:43.137 回答