以下两个简单的代码,代码2只是比代码1多了2行,为什么正则表达式编译就不能通过了?以下用"不同"标明了两个代码不同的地方
using namespace std;
#include <QtGui>
#include <iostream>
#include <regex.h>
//代码1:正则表达式编译-------------------能通过,程序运行输出"ok"-----------------------------------------
int main(int argc,char *argv[])
{
char pattern[100]="[\xfb-\xfe]";
regex_t reg; int cflags=11;
int rc=regcomp(®,pattern,cflags);
if(rc!=0) {cout<<"error!"<<endl;} else {cout<<"ok"<<endl;}
return 0;
}
代码2:正则表达式-------------------不能通过,程序输出"error!"-----------------------------------------
int main(int argc,char *argv[])
{
QApplication app(argc,argv); //不同
char pattern[100]="[\xfb-\xfe]";
regex_t reg; int cflags=11;
int rc=regcomp(®,pattern,cflags);
if(rc!=0) {cout<<"error!"<<endl;} else {cout<<"ok"<<endl;}
return app.exec(); //不同
}
[ 此帖被iiiyyyhhhsss在2010-02-03 14:03重新编辑 ]