vc6.0里的error c2059是什么意思
发布网友
发布时间:2022-04-20 01:13
我来回答
共2个回答
热心网友
时间:2023-07-02 13:52
转贴:http://zhidao.baidu.com/question/278425581.html
一日遇到C2059错误,google搜索发现C2059的错误表现有多种。
这里整理一些以及自己遇到的情况,供大家借鉴解决。
第一种:
int main )
{
}
它会引起C2059错误,错误信息:error C2059: syntax error : )
第二种:
#include <stdio.h>
#define TEST
int main(int argc, char* argv[])
{
#ifdef TEST
printf(\nTEST defined %d, TEST);
#else
printf(\nTEST not defined);
#endif
return 0;
}
它也会引起C2059错误,错误信息:error C2059: syntax error : )
另外一种:
struct ag_type
{
int a;
float b;
};
void func(ag_type arg = {5, 7.0});
它也会引起C2059错误,错误信息:error C2059: syntax error : ) 还会附带error C2143:。
第三种,也是本人遇到的,
刚开始,比较怪异,现象:
1 使用openssl库,在另一个工程里,ok,没问题。
2 在出问题工程里,不在.h文件出现 #include <openssl/*.h> ,ok,正常。
3 在出问题工程里,在.h文件出现 #include <openssl/*.h> 立即出现C2059错误。
此时,在openssl路径配置正确情况下,在某一.h文件只写入
#include <openssl/pkcs12.h>
会出现error C2059: syntax error : constant 错误。
解决:
经仔细研究,对比,试验,发现,openssl的头文件有顺序之分。加入下面句子,即
正常。
#include <openssl/buffer.h>
#include <openssl/err.h>
#include <openssl/rand.h>
#include <openssl/conf.h>
#include <openssl/bio.h>
#include <openssl/objects.h>
#include <openssl/asn1.h>
#include <openssl/pem.h>
#include <openssl/evp.h>
#include <openssl/x509.h>
#include <openssl/x509v3.h>
#include <openssl/pkcs12.h>
根据经验,这是一例头文件互耦比较严重的问题,遇到此种情况,需调整.h文件
出现序列即可解决此类C2059问题。
热心网友
时间:2023-07-02 13:53
感到是错误的意思