将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++;
}
答案 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”文件中包含头文件。
谢谢!