首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

linux下引用tinyxml编写库文件供主程序调用如何编译

2012-06-20 
linux下引用tinyxml编写库文件供主程序调用怎么编译具体代码是这样,作用:主程序调用此so文件实现黑名单和

linux下引用tinyxml编写库文件供主程序调用怎么编译
具体代码是这样,
作用:主程序调用此so文件实现黑名单和故障预警的功能

C/C++ code
// blackname.cpp : 定义 DLL 应用程序的入口点。//#include "tinyxml.h"   #include "tinystr.h"   #include <iostream>   #include "time.h" extern "C"{     int isblackname(char* num,char* xmlpath)    {         int i=0;        TiXmlDocument *myDocument = new TiXmlDocument(xmlpath);        myDocument->LoadFile();        TiXmlElement *pEleRoot = myDocument->RootElement();        TiXmlElement* pEle = NULL;         for (pEle = pEleRoot->FirstChildElement(); pEle; pEle = pEle->NextSiblingElement())                {                                 const char* pszText = pEle->GetText();                        if (!strcmp(pszText,num))                        {                                i=1;             }                     }          return i;    }      int isplay(char* xmlpath)   {     const char* startdate="";        const char* enddate="";        const char* flagstatus="";        TiXmlDocument *myDocument = new TiXmlDocument(xmlpath);        myDocument->LoadFile();        TiXmlElement *pEleRoot = myDocument->RootElement();        TiXmlElement* pEle = pEleRoot->FirstChildElement();         for (int i=0;i<4;i++)                {                                 pEle=pEle->NextSiblingElement();                    switch (i)            {                case 0:                 startdate = pEle->GetText();                      break;                case 1:                     enddate = pEle->GetText();                      break;                case 2:                     flagstatus = pEle->GetText();                      break;            }         }            int y1 = 0;            int m1 = 0;            int d1 = 0;            sscanf(enddate, "%d-%d-%d", &y1, &m1, &d1);             int totalenddate=y1*12*30*24+m1*30*24+d1*24;            sscanf(enddate, "%d-%d-%d", &y1, &m1, &d1);             int totalstartdate=y1*12*30*24+m1*30*24+d1*24;             struct tm *local;              time_t t;              t=time(NULL);              local=localtime(&t);              int totalnow=(local->tm_year+1900)*12*30*24+(local->tm_mon+1)*30*24+local->tm_mday*24;         if(!strcmp(flagstatus,"0")&&totalnow>=totalstartdate&&totalnow<=totalenddate)         {             return 0;         }         else         {            return 1;         }             }}


[解决办法]
不懂,支持一下吧 O(∩_∩)O~

热点排行