C/C++
文章平均质量分 80
linxiaojia
这个作者很懒,什么都没留下…
展开
-
C++的XML编程经验――LIBXML2库使用指南
转自(http://www.blogjava.net/wxb_nudt/archive/2007/11/18/161340.html)写这篇文章的原因有如下几点:1)C++标准库中没有操作XML的方法,用C++操作XML文件必须熟悉一种函数库,LIBXML2是其中一种很优秀的XML库,而且它同时支持多种编程语言;2)LIBXML2库的Tutorial写得不太好,尤其是编码转换的部分,不适用于中转载 2009-04-09 16:38:00 · 812 阅读 · 0 评论 -
工作中一些常用字符串解析函数
本人在工作中会经常用到一些字符串解析函数,准备收集在此。voidget_n_str(str, num, breakstr,datastr)char *str;int num;char breakstr;char *datastr;{ int i; int j; int k; char tmpstr[100]; memset原创 2014-11-01 18:24:42 · 254 阅读 · 0 评论 -
何为堆?何为栈?
堆栈在计算机领域,堆栈是一个不容忽视的概念,但是很多人甚至是计算机专业的人也没有明确堆栈其实是两种数据结构。要点:堆:顺序随意栈:先进后出堆和栈的区别一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)—由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) —一般由程序员原创 2014-11-01 18:19:21 · 549 阅读 · 0 评论 -
linux 多线程编程
1.Linux“线程” 进程与线程之间是有区别的,不过Linux内核只提供了轻量进程的支持,未实现线程模型。Linux是一种“多进程单线程”的操作系统。Linux本身只有进程的概念,而其所谓的“线程”本质上在内核里仍然是进程。 大家知道,进程是资源分配的单位,同一进程中的多个线程共享该进程的资源(如作为共享内存的全局变量)。Linux中所谓的“线程”只是在被创建时clone转载 2014-10-31 23:58:51 · 391 阅读 · 0 评论 -
C/C++返回内部静态成员的陷阱
背景在我们用C/C++开发的过程中,总是有一个问题会给我们带来苦恼。这个问题就是函数内和函数外代码需要通过一块内存来交互(比如,函数返回字符串),这个问题困扰和很多开发人员。如果你的内存是在函数内栈上分配的,那么这个内存会随着函数的返回而被弹栈释放,所以,你一定要返回一块函数外部还有效的内存。这是一个让无数人困扰的问题。如果你一不小心,你就很有可能在这个上面犯错误。当然目前有很多解决方法转载 2014-11-01 18:24:28 · 367 阅读 · 0 评论 -
从语句char*p="test"说起
我相信,使用C/C++多年的人对下面这个字符串赋值语句都不会陌生吧。 char* p = "test"; 同时,我也相信,各位在使用这种语句后吃过很多苦头也不少吧?只要你想利用指针p来改变字符串的内容,你的程序都会得到一个让你颜面尽失一个内存非法操作。比如,下面的这些语句: p[0] = 's'; st原创 2014-11-01 18:24:31 · 1059 阅读 · 0 评论