您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ xmlStrdup函数代码示例

51自学网 2021-06-03 11:46:51
  C++
这篇教程C++ xmlStrdup函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中xmlStrdup函数的典型用法代码示例。如果您正苦于以下问题:C++ xmlStrdup函数的具体用法?C++ xmlStrdup怎么用?C++ xmlStrdup使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了xmlStrdup函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: rxml_default_tree_indent_string_set

/* * call-seq: *    XML.default_tree_indent_string = "string" * * Set the default string used by parsers to indent the XML tree * for output. */static VALUE rxml_default_tree_indent_string_set(VALUE klass, VALUE string){  Check_Type(string, T_STRING);  xmlTreeIndentString = (const char *)xmlStrdup((xmlChar *)StringValuePtr(string));  return (string);}
开发者ID:xml4r,项目名称:libxml-ruby,代码行数:13,


示例2: pgxmlNodeSetToText

static xmlChar*pgxmlNodeSetToText(xmlNodeSetPtr nodeset,				   xmlChar * toptagname,				   xmlChar * septagname,				   xmlChar * plainsep){	/* Function translates a nodeset into a text representation */	/*	 * iterates over each node in the set and calls xmlNodeDump to write it to	 * an xmlBuffer -from which an xmlChar * string is returned.	 */	/* each representation is surrounded by <tagname> ... </tagname> */	/*	 * plainsep is an ordinary (not tag) seperator - if used, then nodes are	 * cast to string as output method	 */	xmlBufferPtr buf;	xmlChar    *result;	int			i;	buf = xmlBufferCreate();	if ((toptagname != NULL) && (xmlStrlen(toptagname) > 0))	{		xmlBufferWriteChar(buf, "<");		xmlBufferWriteCHAR(buf, toptagname);		xmlBufferWriteChar(buf, ">");	}	if (nodeset != NULL)	{		for (i = 0; i < nodeset->nodeNr; i++)		{			if (plainsep != NULL)			{				xmlBufferWriteCHAR(buf,							  xmlXPathCastNodeToString(nodeset->nodeTab[i]));				/* If this isn't the last entry, write the plain sep. */				if (i < (nodeset->nodeNr) - 1)					xmlBufferWriteChar(buf, plainsep);			}			else			{				if ((septagname != NULL) && (xmlStrlen(septagname) > 0))				{					xmlBufferWriteChar(buf, "<");					xmlBufferWriteCHAR(buf, septagname);					xmlBufferWriteChar(buf, ">");				}				xmlNodeDump(buf,							nodeset->nodeTab[i]->doc,							nodeset->nodeTab[i],							1, 0);				if ((septagname != NULL) && (xmlStrlen(septagname) > 0))				{					xmlBufferWriteChar(buf, "</");					xmlBufferWriteCHAR(buf, septagname);					xmlBufferWriteChar(buf, ">");				}			}		}	}	if ((toptagname != NULL) && (xmlStrlen(toptagname) > 0))	{		xmlBufferWriteChar(buf, "</");		xmlBufferWriteCHAR(buf, toptagname);		xmlBufferWriteChar(buf, ">");	}	result = xmlStrdup(buf->content);	xmlBufferFree(buf);	return result;}
开发者ID:CraigBryan,项目名称:PostgresqlFun,代码行数:83,


示例3: xsltprocExternalEntityLoader

/* This snippet is borrowed from the xsltproc source * and adapted to help the xsl transform find our temporary * files in $HOME/.gnc-migration-tmp/ */static xmlParserInputPtrxsltprocExternalEntityLoader(const char *URL, const char *ID,                             xmlParserCtxtPtr ctxt){    xmlParserInputPtr ret;    warningSAXFunc warning = NULL;    xmlChar *newURL;    gchar *tmpdir = g_build_filename (g_get_home_dir (), ".gnc-migration-tmp", NULL);    const char *lastsegment = URL;    const char *iter = URL;    while (*iter != 0)    {        if (*iter == '/')            lastsegment = iter + 1;        iter++;    }    if ((ctxt != NULL) && (ctxt->sax != NULL))    {        warning = ctxt->sax->warning;        ctxt->sax->warning = NULL;    }    if (defaultEntityLoader != NULL)    {        ret = defaultEntityLoader(URL, ID, ctxt);        if (ret != NULL)        {            if (warning != NULL)                ctxt->sax->warning = warning;            return(ret);        }    }    newURL = xmlStrdup((const xmlChar *) tmpdir);    newURL = xmlStrcat(newURL, (const xmlChar *) "/");    newURL = xmlStrcat(newURL, (const xmlChar *) lastsegment);    g_free (tmpdir);    if (newURL != NULL)    {        ret = defaultEntityLoader((const char *)newURL, ID, ctxt);        if (ret != NULL)        {            if (warning != NULL)                ctxt->sax->warning = warning;            xmlFree(newURL);            return(ret);        }        xmlFree(newURL);    }    if (warning != NULL)    {        ctxt->sax->warning = warning;        if (URL != NULL)            DEBUG ("External entity /"%s/" not loaded", URL);        else if (ID != NULL)            DEBUG ("External entity /"%s/" not loaded", ID);    }    return(NULL);}
开发者ID:jralls,项目名称:gnucash,代码行数:66,


示例4: dom_xpath_ext_function_php

static void dom_xpath_ext_function_php(xmlXPathParserContextPtr ctxt, int nargs, int type) /* {{{ */{	zval retval;	int result, i;	int error = 0;	zend_fcall_info fci;	xmlXPathObjectPtr obj;	char *str;	zend_string *callable = NULL;	dom_xpath_object *intern;	if (! zend_is_executing()) {		xmlGenericError(xmlGenericErrorContext,		"xmlExtFunctionTest: Function called from outside of PHP/n");		error = 1;	} else {		intern = (dom_xpath_object *) ctxt->context->userData;		if (intern == NULL) {			xmlGenericError(xmlGenericErrorContext,			"xmlExtFunctionTest: failed to get the internal object/n");			error = 1;		}		else if (intern->registerPhpFunctions == 0) {			xmlGenericError(xmlGenericErrorContext,			"xmlExtFunctionTest: PHP Object did not register PHP functions/n");			error = 1;		}	}	if (error == 1) {		for (i = nargs - 1; i >= 0; i--) {			obj = valuePop(ctxt);			xmlXPathFreeObject(obj);		}		return;	}	fci.param_count = nargs - 1;	if (fci.param_count > 0) {		fci.params = safe_emalloc(fci.param_count, sizeof(zval), 0);	}	/* Reverse order to pop values off ctxt stack */	for (i = nargs - 2; i >= 0; i--) {		obj = valuePop(ctxt);		switch (obj->type) {			case XPATH_STRING:				ZVAL_STRING(&fci.params[i],  (char *)obj->stringval);				break;			case XPATH_BOOLEAN:				ZVAL_BOOL(&fci.params[i],  obj->boolval);				break;			case XPATH_NUMBER:				ZVAL_DOUBLE(&fci.params[i], obj->floatval);				break;			case XPATH_NODESET:				if (type == 1) {					str = (char *)xmlXPathCastToString(obj);					ZVAL_STRING(&fci.params[i], str);					xmlFree(str);				} else if (type == 2) {					int j;					array_init(&fci.params[i]);					if (obj->nodesetval && obj->nodesetval->nodeNr > 0) {						for (j = 0; j < obj->nodesetval->nodeNr; j++) {							xmlNodePtr node = obj->nodesetval->nodeTab[j];							zval child;							/* not sure, if we need this... it's copied from xpath.c */							if (node->type == XML_NAMESPACE_DECL) {								xmlNsPtr curns;								xmlNodePtr nsparent;								nsparent = node->_private;								curns = xmlNewNs(NULL, node->name, NULL);								if (node->children) {									curns->prefix = xmlStrdup((xmlChar *) node->children);								}								if (node->children) {									node = xmlNewDocNode(node->doc, NULL, (xmlChar *) node->children, node->name);								} else {									node = xmlNewDocNode(node->doc, NULL, (xmlChar *) "xmlns", node->name);								}								node->type = XML_NAMESPACE_DECL;								node->parent = nsparent;								node->ns = curns;							}							php_dom_create_object(node, &child, &intern->dom);							add_next_index_zval(&fci.params[i], &child);						}					}				}				break;			default:			ZVAL_STRING(&fci.params[i], (char *)xmlXPathCastToString(obj));		}		xmlXPathFreeObject(obj);	}	fci.size = sizeof(fci);//.........这里部分代码省略.........
开发者ID:AxiosCros,项目名称:php-src,代码行数:101,


示例5: xmlEncodeEntitiesReentrant

//.........这里部分代码省略.........        *out++ = 'a';        *out++ = 'm';        *out++ = 'p';        *out++ = ';';    } else if (((*cur >= 0x20) && (*cur < 0x80)) ||        (*cur == '/n') || (*cur == '/t') || ((html) && (*cur == '/r'))) {        /*         * default case, just copy !         */        *out++ = *cur;    } else if (*cur >= 0x80) {        if (((doc != NULL) && (doc->encoding != NULL)) || (html)) {        /*         * Bj?rn Reese <[email
C++ xmlStrlen函数代码示例
C++ xmlStrcasecmp函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。