开发平台(Platform): (Ex: Win10, Linux, ...)
Win10
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
Visual Studio 2017
问题(Question):
DLL的标头档无法组建
喂入的资料(Input):
作业要求得将自定义函数FILE* fopenText(char* fName, char* mode);
放在DLL档中
预期的正确结果(Expected Output):
成功组建产出DLL档
错误结果(Wrong Output):
组建失败
程式码(Code):(请善用置底文网页, 记得排版,禁止使用图档)
(标头档)
#pragma once
extern "C" int getLine(char a[], int sz);
extern "C" void linesFree(char *a[], int n);
extern "C" int linesRead(char *a[], int max);
extern "C" void linesSort(char *a[], int n);
extern "C" void linesWrite(char *a[], int n);
extern "C" FILE* fopenText(char* fName, char* mode);
(fopenText函数)
https://ideone.com/1Edt8s
补充说明(Supplement):
大概是不支援自定义的函数类型吧我猜
标头档中的 extern "C" FILE* fopenText(char* fName, char* mode);
这句被抓到syntax error: missing ';' before '*'
还有missing type specifier
请问要用哪种type去定义呢?
有试着直接把FILE*改成int或是其他类型
但是结果都是更多错误
该函数的内容应该是没有问题(老师直接给的)
不过以防万一还是丢了上来