亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? test.cpp

?? 調用apr庫中的xml接口
?? CPP
字號:
// test.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include <iostream>
//#include <hash_set>
#include <map>
#include <algorithm>
#include <functional>
#include <vector>

//#include "config.h"
#include "gd.h"
#include "gdfontt.h"
#include "gdfonts.h"
#include "gdfontmb.h"
#include "gdfontl.h"
#include "gdfontg.h"


//---------------------------------------------------------------------------

#pragma hdrstop

//---------------------------------------------------------------------------
//////////////////////////////////////////////////////////////////////////
#define CORE_PRIVATE
#include "apr_strings.h"
#include "apr_pools.h"
#include "C:\\Program Files\\Apache Software Foundation\\Apache2.2\\include\\apr_pools.h"
#include "apr_general.h"
#include "apr_hash.h"
#include "apr_lib.h"
#include "apr_time.h"
#include "apr_xml.h"
#include "apr_network_io.h"

//#include <regex.h>
using namespace std;

static const char *progname;
static const char *usage = "%s [xmlfile]\nIt will create "
                           "a dummy XML file if none is supplied";
/*
 * If our platform knows about the tmpnam() external buffer size, create
 * a buffer to pass in.  This is needed in a threaded environment, or
 * one that thinks it is (like HP-UX).
 */

#ifdef L_tmpnam
static char tname_buf[L_tmpnam];
#else
static char *tname_buf = NULL;
#endif

static apr_status_t create_dummy_file_error(apr_pool_t *p, apr_file_t **fd)
{
    apr_status_t rv;
    char *tmpfile;
    int i;
    apr_off_t off = 0L;
    tmpfile = tmpnam(tname_buf);

    if ((tmpfile == NULL) || (*tmpfile == '\0')) {
        fprintf(stderr, "unable to generate temporary filename\n");
        if (errno == 0) {
            errno = ENOENT;
        }
        perror("tmpnam");
        return APR_ENOENT;
    }
    rv = apr_file_open(fd, tmpfile, APR_CREATE|APR_TRUNCATE|APR_DELONCLOSE|
                       APR_READ|APR_WRITE|APR_EXCL, APR_OS_DEFAULT, p);

    if (rv != APR_SUCCESS)
        return rv;
    rv = apr_file_puts("<?xml version=\"1.0\" ?>\n<maryx>"
                       "<had a=\"little\"/><lamb its='fleece "
                       "was white as snow' />\n", *fd);
    if (rv != APR_SUCCESS)
        return rv;

    for (i = 0; i < 5000; i++) {
        rv = apr_file_puts("<hmm roast=\"lamb\" "
                           "for=\"dinner\">yummy</hmm>\n", *fd);
        if (rv != APR_SUCCESS)
            return rv;
    }
    rv = apr_file_puts("</mary>\n", *fd);
    if (rv != APR_SUCCESS)
        return rv;

    return apr_file_seek(*fd, APR_SET, &off);
}

static apr_status_t create_dummy_file(apr_pool_t *p, apr_file_t **fd)
{
    apr_status_t rv;
    char *tmpfile;
    int i;
    apr_off_t off = 0L;
    tmpfile = tmpnam(tname_buf);

    if ((tmpfile == NULL) || (*tmpfile == '\0')) {
        fprintf(stderr, "unable to generate temporary filename\n");
        if (errno == 0) {
            errno = ENOENT;
        }
        perror("tmpnam");
        return APR_ENOENT;
    }
    rv = apr_file_open(fd, "c:\\tmpfile.xml", APR_CREATE|APR_TRUNCATE/*|APR_DELONCLOSE*/|
                       APR_READ|APR_WRITE|APR_EXCL, APR_OS_DEFAULT, p);

    if (rv != APR_SUCCESS)
        return rv;
    rv = apr_file_puts("<?xml version=\"1.0\" ?>\n<mary>"
                       "<had a=\"little\"/><lamb its='fleece "
                       "was white as snow' />\n", *fd);
    if (rv != APR_SUCCESS)
        return rv;

    for (i = 0; i < 50; i++) {
        rv = apr_file_puts("<hmm roast=\"lamb\" "
                           "for=\"dinner\">yummy</hmm>\n", *fd);
        if (rv != APR_SUCCESS)
            return rv;
    }
    rv = apr_file_puts("</mary>\n", *fd);
    if (rv != APR_SUCCESS)
        return rv;

    rv = apr_file_seek(*fd, APR_SET, &off);
    return rv;
}

static void dump_xml(apr_xml_elem *e, int level)
{
    apr_xml_attr *a;
    apr_xml_elem *ec;

    printf("%d: element %s\n", level, e->name);
    if (e->attr) {
        a = e->attr;
        printf("%d:\tattrs\t", level);
        while (a) {
            printf("%s=%s\t", a->name, a->value);
            a = a->next;
        }
        printf("\n");
    }
    if (e->first_child) {
        ec = e->first_child;
        while (ec) {
            dump_xml(ec, level + 1);
            ec = ec->next;
        }
    }
}

static void oops(const char *s1, const char *s2, apr_status_t rv)
{
    if (progname)
        fprintf(stderr, "%s: ", progname);
    fprintf(stderr, s1, s2);
    if (rv != APR_SUCCESS) {
        char buf[120];

        fprintf(stderr, " (%s)", apr_strerror(rv, buf, sizeof buf));
    }
    fprintf(stderr, "\n");
    exit(1);
}

int main(int argc, const char *const * argv)
{
	try
	{
		apr_pool_t *pool;
		apr_file_t *fd;
		apr_xml_parser *parser;
		apr_xml_doc *doc;
		apr_status_t rv;
		char errbuf[2000];
		char errbufXML[2000];

		(void) apr_initialize();
		apr_pool_create(&pool, NULL);
		progname = argv[0];
		if (argc == 1) {
			rv = create_dummy_file(pool, &fd);
			
			if (rv != APR_SUCCESS) {
				oops("cannot create dummy file", "oops", rv);
			}
		}
		else {
			if (argc == 2) {
				rv = apr_file_open(&fd, argv[1], APR_READ, APR_OS_DEFAULT, pool);
				if (rv != APR_SUCCESS) {
					oops("cannot open: %s", argv[1], rv);
				}
			}
			else {
				oops("usage: %s", usage, 0);
			}
		}
		rv = apr_xml_parse_file(pool, &parser, &doc, fd, 2000);
		if (rv != APR_SUCCESS) {
			fprintf(stderr, "APR Error %s\nXML Error: %s\n",
					apr_strerror(rv, errbuf, sizeof(errbuf)),
				 apr_xml_parser_geterror(parser, errbufXML, sizeof(errbufXML)));
			return rv;
		}
		dump_xml(doc->root, 0);
		apr_file_close(fd);
		if (argc == 1) {
			rv = create_dummy_file_error(pool, &fd);
			if (rv != APR_SUCCESS) {
				oops("cannot create error dummy file", "oops", rv);
			}
			rv = apr_xml_parse_file(pool, &parser, &doc, fd, 2000);
			if (rv != APR_SUCCESS) {
				fprintf(stdout, "APR Error %s\nXML Error: %s "
								"(EXPECTED) This is good.\n",
						apr_strerror(rv, errbuf, sizeof(errbuf)),
				 apr_xml_parser_geterror(parser, errbufXML, sizeof(errbufXML)));
				 rv = APR_SUCCESS; /* reset the return code, as the test is supposed to get this error */
			}
			else {
				fprintf(stderr, "Expected an error, but didn't get one ;( ");
				return APR_EGENERAL;
			}
		}
		apr_pool_destroy(pool);
		apr_terminate();
		return rv;
	}
	catch (...)
	{
		fprintf(stderr, "\n");	
	}
	return -1;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美高清一级片在线| av在线一区二区| 亚洲精品视频在线| 日本一区二区三区免费乱视频| 欧美福利一区二区| 欧美日韩1区2区| 欧美日韩一级大片网址| 欧美性猛交xxxxxx富婆| 91极品美女在线| 91成人免费网站| 欧美日产国产精品| 7777精品伊人久久久大香线蕉超级流畅| 91日韩在线专区| 91老师片黄在线观看| 色综合久久中文字幕| 91在线免费播放| 在线免费观看成人短视频| 在线免费精品视频| 欧美日韩国产三级| 日韩欧美资源站| 久久久久久**毛片大全| 国产午夜亚洲精品理论片色戒| 中文字幕不卡在线播放| 中文字幕佐山爱一区二区免费| 日韩伦理av电影| 亚洲高清不卡在线观看| 视频一区国产视频| 狠狠狠色丁香婷婷综合久久五月| 国产成人亚洲综合a∨婷婷图片| 成人黄动漫网站免费app| 91免费版在线| 日韩欧美中文一区二区| 国产精品天干天干在观线| 亚洲婷婷国产精品电影人久久| 一区二区三区 在线观看视频| 视频在线观看一区| 国产东北露脸精品视频| 欧美三级电影精品| 久久久久久99精品| 亚洲成人你懂的| 国产福利一区二区三区在线视频| 色综合久久综合| 久久久久久久久久久久久女国产乱| √…a在线天堂一区| 毛片av一区二区| 91视频你懂的| 国产亚洲欧洲一区高清在线观看| 亚洲免费在线视频| 国产一区二区影院| 欧美天堂亚洲电影院在线播放 | 久久久精品免费观看| 中文字幕永久在线不卡| 免费成人在线影院| 在线观看视频91| 久久九九久精品国产免费直播| 亚洲线精品一区二区三区| 国产精品中文字幕欧美| 宅男噜噜噜66一区二区66| 中文字幕一区二区三区视频| 久久精品久久久精品美女| 在线观看91精品国产入口| 久久精品在这里| 久久国产精品一区二区| 欧美精品久久99久久在免费线 | 国产福利一区二区| 91精品国产欧美一区二区成人| 自拍偷在线精品自拍偷无码专区| 国内精品伊人久久久久av一坑| 欧美日免费三级在线| 中文字幕一区三区| 国产精品亚洲а∨天堂免在线| 91精品国产高清一区二区三区蜜臀| 亚洲欧美一区二区视频| 丰满岳乱妇一区二区三区| 91精品国产综合久久久久久久久久| 亚洲视频图片小说| caoporen国产精品视频| 久久精品人人做人人爽97| 久久91精品久久久久久秒播| 717成人午夜免费福利电影| 亚洲一区在线免费观看| 日本高清成人免费播放| 一区二区三区久久| 一本色道**综合亚洲精品蜜桃冫| 中文字幕一区二区视频| bt7086福利一区国产| 一区在线中文字幕| av资源网一区| 亚洲视频香蕉人妖| 欧美性猛片xxxx免费看久爱| 亚洲高清不卡在线| 91麻豆精品国产91久久久| 日韩高清欧美激情| 精品国产一区久久| 精品无人区卡一卡二卡三乱码免费卡| 日韩女优视频免费观看| 国产一区二区看久久| 国产精品久久久久影院老司| 99久久精品99国产精品| 亚洲国产毛片aaaaa无费看| 精品视频免费看| 蜜桃视频在线一区| 国产亚洲欧美日韩在线一区| 不卡的av在线播放| 亚洲影院在线观看| 日韩免费视频线观看| 国产乱码精品一区二区三区忘忧草| 国产精品丝袜黑色高跟| 欧美中文字幕久久| 美女视频网站黄色亚洲| 国产精品欧美久久久久一区二区| 91蜜桃免费观看视频| 日本vs亚洲vs韩国一区三区二区| 久久久久久免费毛片精品| 成人avav影音| 日韩黄色免费网站| 日本一区二区三区在线观看| 欧美私人免费视频| 国产成人免费视频网站| 亚洲成人免费视| 国产午夜精品一区二区| 欧美日韩美女一区二区| 国产v综合v亚洲欧| 婷婷综合在线观看| 国产精品久久久久久久久免费桃花 | 亚洲成人第一页| 国产亚洲污的网站| 欧美裸体一区二区三区| 国产精品自拍一区| 夜夜夜精品看看| 欧美激情艳妇裸体舞| 91精品国产美女浴室洗澡无遮挡| 成人久久18免费网站麻豆| 婷婷成人激情在线网| 中文字幕在线不卡视频| 精品国产百合女同互慰| 欧美日韩中文字幕一区二区| 成人动漫一区二区在线| 久久99国产精品麻豆| 亚洲国产美女搞黄色| 亚洲欧洲精品天堂一级 | 久久国产精品99精品国产 | 日本久久电影网| 国产福利一区二区三区视频| 日本在线不卡一区| 有坂深雪av一区二区精品| 日韩欧美激情一区| 色悠悠亚洲一区二区| 高清国产一区二区| 裸体健美xxxx欧美裸体表演| 亚洲成人av免费| 一区二区三区四区亚洲| 中文字幕日韩精品一区| 国产精品色婷婷久久58| 久久蜜桃av一区二区天堂| 日韩视频一区二区三区在线播放| 欧美男人的天堂一二区| 欧美视频日韩视频在线观看| 91成人在线观看喷潮| 在线亚洲免费视频| 色美美综合视频| 在线视频亚洲一区| 欧美性大战久久久久久久蜜臀| 色综合网站在线| 91啪在线观看| 欧美专区日韩专区| 欧美日韩精品是欧美日韩精品| 欧美午夜精品一区二区蜜桃| 欧美日本视频在线| 日韩欧美在线影院| 日韩精品影音先锋| 久久久久久黄色| 国产精品久久午夜| 亚洲一区二区三区四区的| 亚洲综合清纯丝袜自拍| 天天操天天干天天综合网| 日韩精品午夜视频| 国模娜娜一区二区三区| 国v精品久久久网| 97久久精品人人澡人人爽| 91福利小视频| 欧美一卡2卡3卡4卡| 国产亚洲人成网站| 一区二区三区成人| 日韩黄色在线观看| 国产成人精品综合在线观看| 99麻豆久久久国产精品免费优播| 在线免费精品视频| 精品久久久久av影院| 国产精品视频线看| 亚洲动漫第一页| 国产精品一区二区不卡| 一本色道亚洲精品aⅴ| 欧美一级专区免费大片| 国产精品免费免费| 日日摸夜夜添夜夜添亚洲女人| 国产自产v一区二区三区c| 91网上在线视频| 日韩欧美国产1| 亚洲男同性视频|