亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪問(wèn)板塊 發(fā)新帖
查看: 2924 | 回復(fù): 7
打印 上一主題 下一主題

help me about libxml2 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2007-03-20 10:27 |只看該作者 |倒序?yàn)g覽
undefined reference to 'xmlSaveFormatFile'
我在編譯的時(shí)候出先上面的問(wèn)題,請(qǐng)問(wèn)怎么解決,還有幾處警告 xmlNewTextChild
我的程序代碼為:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <libxml/xmlmemory.h>
#include <libxml/parser.h>
#include <libxml/tree.h>  //xmlSaveFormatFile();
void parseFile(xmlDocPtr doc,xmlNodePtr cur,char *key)
{
        xmlNewTextChild(doc,NULL,"filename",key);
        return;
}
xmlDocPtr parseDoc(char *docname,char *keyword)
{
        xmlDocPtr doc;
        xmlNodePtr cur;
        doc=xmlParseFile(docname);
        if(doc==NULL)
        {
                fprintf(stderr,"Document not parse successful!\n");
                return (NULL);
        }
        cur=xmlDocGetRootElement(doc);
        if(cur==NULL)
        {        
                fprintf(stderr,"Empty Document\n");
                xmlFreeDoc(doc);
                ruturn (NULL);
        }
        if(xmlStrcmp(cur->name,(xmlChar *)"fileinfo")
        {
                fprintf(stderr,"Document Root!=fileinfo\n");
                xmlFreeDoc(doc);
                return (NULL);
        }
        cur=cur->xmlChildrenNode;
        while(cur!=NULL)
        {
                if(!xmlStrcmp(cur->name,(xmlChar *)"filename")
                {
                        parseFile(doc,cur,keyword);
                }
                cur=cur->next;
        }
        return doc;
}
int main(int argc,char *argv[])
{
        char *filename="root/TotalTime.xml";
        char key[20];
        xmlDocPtr doc;
        printf("Please input filename:\n");
        scanf("%s,",key);
        doc=parseDoc(filename,key);
        if(doc!=NULL)
        {
                xmlSaveFormatFile(filename,doc,0);
                xmlFreeDoc(doc);
        }
        return (1);
}


count.c: 在函數(shù) ‘parseFile’ 中:
count.c:8: 警告:passing argument 1 of ‘xmlNewTextChild’ from incompatible pointer type
count.c:8: 警告:傳遞參數(shù) 3 (屬于 ‘xmlNewTextChild’) 給指針時(shí)目標(biāo)與指針有/無(wú)符號(hào)不一致
count.c:8: 警告:傳遞參數(shù) 4 (屬于 ‘xmlNewTextChild’) 給指針時(shí)目標(biāo)與指針有/無(wú)符號(hào)不一致
/tmp/cck82zbd.o(.text+0x1b5): In function `main':
count.c: undefined reference to `xmlSaveFormatFile'
collect2: ld 返回 1

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2007-03-20 16:05 |只看該作者
偌大的一個(gè)論壇.................
等了我一天了,也沒(méi)人幫忙???
哎....冷...........................

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2007-03-20 22:30 |只看該作者
警告是說(shuō)你傳遞的參數(shù)類(lèi)型不匹配。
undefined reference to 'xmlSaveFormatFile' ?
是因?yàn)闆](méi)有鏈接libxml2的庫(kù),
編譯程序的時(shí)候加上  -L/usr/lib -lxml2,

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2007-03-20 22:39 |只看該作者
看看xmlSaveFormatFile是否在另外的命名空間中??

論壇徽章:
0
5 [報(bào)告]
發(fā)表于 2007-03-21 14:28 |只看該作者
謝謝各位!現(xiàn)在運(yùn)行的時(shí)候,出現(xiàn)段錯(cuò)誤,不知原因在哪?? 編譯已通過(guò)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <libxml/xmlmemory.h>
#include <libxml/parser.h>
void parseFile(xmlNodePtr cur,char *key)
{
        xmlNewTextChild(cur,NULL,"filename",key);
        return;
}
xmlDocPtr parseDoc(char *docname,char *keyword)
{
        xmlDocPtr doc;
        xmlNodePtr cur;
        doc=xmlParseFile(docname);
        if(doc==NULL)
        {
                fprintf(stderr,"Document not parse successful!\n");
                return (NULL);
        }
        cur=xmlDocGetRootElement(doc);
        if(cur==NULL)
        {       
                fprintf(stderr,"Empty Document\n");
                xmlFreeDoc(doc);
                ruturn (NULL);
        }
        if(xmlStrcmp(cur->name,(xmlChar *)"fileinfo")
        {
                fprintf(stderr,"Document Root!=fileinfo\n");
                xmlFreeDoc(doc);
                return (NULL);
        }
        cur=cur->xmlChildrenNode;
        while(cur!=NULL)
        {
                if(!xmlStrcmp(cur->name,(xmlChar *)"filename")
                {
                        parseFile(cur,keyword);
                }
                cur=cur->next;
        }
        return doc;
}
int main(int argc,char *argv[])
{
        char *filename="root/TotalTime.xml";
        char key[20];
        xmlDocPtr doc;
        printf("Please input filename:\n");
        scanf("%s,",key);
        doc=parseDoc(filename,key);
        if(doc!=NULL)
        {
                xmlSaveFormatFile(filename,doc,1);
                xmlFreeDoc(doc);
        }
        return (1);
}

root/TotalTime.xml

<?xml version="1.0" encoding="UTF-8"?>
<fileinfo>
<filename>test.flv</filename>
<filetotaltime>0.00</filetotaltime>
</fileinfo>

論壇徽章:
0
6 [報(bào)告]
發(fā)表于 2007-03-21 15:41 |只看該作者
我也在學(xué)xml,剛開(kāi)始學(xué),不知道你的
#include <libxml/xmlmemory.h>
#include <libxml/parser.h>
在那里阿,我的怎么沒(méi)有啊/
還有怎么用c語(yǔ)言讀、寫(xiě)和修改xml文件阿?
謝謝了。

論壇徽章:
0
7 [報(bào)告]
發(fā)表于 2007-03-26 11:07 |只看該作者
段錯(cuò)誤是fprintf引起的,貌似不能直接將字符串輸入到文件
需要使用fprintf(stream, const char *format,...)

論壇徽章:
0
8 [報(bào)告]
發(fā)表于 2007-03-30 14:59 |只看該作者
看看xmlSaveFormatFile是否在另外的命名空間中??
怎么看它所在命名空間???
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專(zhuān)區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過(guò)ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP