摘要:
抓取url的超链接程序(使用到libcurl和libxml2)写了一个c++语言小程序,当作练习。c++文件:#include <iostream>#include <stdio.h>#include <string.h>#include <stdlib.h>#include <string>#include <vector>#include <curl/curl.h>#include <libxml/HTMLparser.h>using namespace std;#ifdef _MSC_VER# 阅读全文
随笔分类 - Linux程序设计(C/C++)
在fedora10下面打开telnet服务
2010-03-08 21:17 by htc开发, 210 阅读, 收藏,
摘要:
我的fedora是通过liveCD进行安装,默认的telnet服务是没有开的.如果要启动并开通该项服务的话,可以通过如下方式进行:1).安装xinetd,telnet-server,通过yum可以直接安装;2).修改vi /etc/xinetd.d/telnet,将里面的disable由yes改为no.3).配置telnet服务自启动:chkconfig xinetd on4).启动telnet服务:service xinetd start5).在防火墙中取消telnet默认端口23的限制.在gnome菜单中system->adminstrator->firewall中可以直接取消 阅读全文
user is not in the sudoers file
2010-03-05 13:55 by htc开发, 202 阅读, 收藏,
摘要:
Ubuntu8.04版本,在一般用户下执行sudo命令提示user is not in the sudoers file. This incident will be reported.解决方法: 一、$where is sudoers -------找出文件所在的位置,默认都是/etc/sudoers 二、#chmod u+w /etc/sudoers 以超级用户登录su -root ,修改文件权限即添加文件拥有这的写权限 限,ls -al /etc/sudoers 可以查看原文件的权限。 三、vim /etc/sudoers 编辑文件,在root ALL=(ALL)ALL行下添加XXX . 阅读全文
Linux2.6 内核的 Initrd 机制解析
2010-02-04 20:52 by htc开发, 214 阅读, 收藏,
摘要:
1.什么是 Initrd initrd 的英文含义是 boot loader initialized RAM disk,就是由 boot loader 初始化的内存盘。在 linux内核启动前, boot loader 会将存储介质中的 initrd 文件加载到内存,内核启动时会在访问真正的根文件系统前先访问该内存中的 initrd 文件系统。在 boot loader配置了 initrd 的情况下,内核启动被分成了两个阶段,第一阶段先执行 initrd 文件系统中的"某个文件",完成加载驱动模块等任务,第二阶段才会执行真正的根文件系统中的 /sbin/init 进程。这里 阅读全文
LINUX 自启动管理
2010-01-25 11:18 by htc开发, 215 阅读, 收藏,
摘要:
前言linux有自己一套完整的启动体系,抓住了linux启动的脉络,linux的启动过程将不再神秘。阅读之前建议先看一下附图。本文中假设inittab中设置的inittree为:/etc/rc.d/rc0.d/etc/rc.d/rc1.d/etc/rc.d/rc2.d/etc/rc.d/rc3.d/etc/rc.d/rc4.d/etc/rc.d/rc5.d/etc/rc.d/rc6.d/etc/rc.d/init.d目录1.关于linux的启动2.关于rc.d3.启动脚本示例4.关于rc.local5.关于bash启动脚本6.关于开机程序的自动启动1.关于linux的启动init是所有进程的顶 阅读全文
va_start() va_end()函数应用
2009-12-22 23:03 by htc开发, 190 阅读, 收藏,
摘要:
1:当无法列出传递函数的所有实参的类型和数目时,可用省略号指定参数表void foo(...);void foo(parm_list,...);2:函数参数的传递原理函数参数是以数据结构:栈的形式存取,从右至左入栈.eg:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->1#include<iostream>2voidfun(inta,)3{4int*temp=&a;5temp++;6for(inti=0;i<a;++ 阅读全文
获取本程序绝对路径
2009-12-13 20:03 by htc开发, 286 阅读, 收藏,
摘要:
经常看到有人提问在linux中如何获取当前应用程序的绝对路径, 却很少有人能比较好的解答. 现转贴www.linuxforum.net上的一篇文章中的一段, 希望能对受这个问题困扰的人有帮助. 13.12 如何获取当前进程对应之静态映像文件的绝对路径 A: hushui110@水木清华 这是一个x86/Linux Kernel 2.4.7-10系统中利用proc获取绝对路径的例子 ---------------------------------------------------------------------... 阅读全文
sock通信--数据结构的传送
2009-11-18 14:07 by htc开发, 170 阅读, 收藏,
摘要:
sock通信中有几个问题必须注意,由于标准的不统一,有的机器使用的大端存储,而有的机器使用的是小端存储(如果对大小端不了解可以上网搜寻一下相关信息). 我们的机器的存储方式各不相同,但是由于历史原因,网络字节序使用的是大端,也就是说,我们要通过网络传输信息到远断,我们要当心了. 如果明确了传送信息的双方都是相同的存储方式那么还好办,如果传送双方的存储方式不相同或者不一定相同,我们就必须把发送的数据进行相应的格式转换再发送到网络上,直至远端. 由于网络字节序是大端,那么,我们再发送一个数据结构时,需要把这个结构中的每个成员转换成网络字节序,再发送到远端,而不只是简单的发送这些数据给远端. 下面. 阅读全文
UNIX 标准与实现中限制和选项
2009-11-02 19:16 by htc开发, 154 阅读, 收藏,
摘要:
一.前言 我们在学习《UNIX环境高级编程》这本书,刚开始就会感到晦涩的就是第二章的内容----UNIX标准与实现。刚开始看确实比较难懂,往往我们会先放一放,后面的很多章节都提到了这方面的内容,等到时候在回顾,或许就会感到霍然开朗! 这本书,我也刚刚看完,感觉还是有很多地方没有掌握,所以在回顾一下,温故而知新嘛。二.限制1.哪些限制 为了更好的可移植性,UNIX提供了一些限制,它们定义在头文件<limit.h>中,其中两种限制是必须的: (1). 编译时限制 (2).运行时限制 编译时限制一般是在头文件中定义的,我们可以通过这样的形式来查看它: 例如:我们要查看ARG_MAX这个限 阅读全文
用户ID,组ID 文件访问权限,文件与进程属性浅析
2009-11-01 11:09 by htc开发, 220 阅读, 收藏,
摘要:
APUE中用户ID,组ID 文件访问权限,文件与进程属性浅析首先列出一图表 与每个进程相关的用户ID与组ID实际用户ID我们实际上是谁实际组ID有效用户ID用于文件访问权限检查有效组ID附加组ID保存的设置用户ID由exec函数保存保存的设置组ID上面这个图表书中本来就有,呆会儿在做详悉介绍一.首先必须了解文件的访问权限,在书中是第四章的内容同文件访问权限相关的有umask,satat,chmod通常在shell命令中我们可以通过umask设置文件访问权限掩码,创建一个文件,如果随后需要修改文件的访问权限的话,可以接着使用chmod命令修改文件访问权限1.什么是文件访问权限?通俗的讲,文件访. 阅读全文
IPC消息队列使用详细分析
2009-10-26 20:35 by htc开发, 269 阅读, 收藏,
摘要:
虽然说是进程间通信中有关消息队列的一个比较详细的分析 同样的,共享内存,信号量和消息队列的公共部分知识也都同理 首先:使用XSI IPC需要首先了解标识符和键的概念 标识符是标识IPC对象的一个量,通常由一个int型变量表示,不过标识符只是IPC对象的内部名,如果要使的多个进程能够使用同一个IPC,需要得到一个外部名,这个外部名就是键--KEY,每个IPC对象都与一个键相关联 对于消息队列:可以通过函数magget通过一个键获得他的标识符,即通过外部标识得到内部标识的一个方法 例如:我们知道一个消息队列的键是msg_key; 那么:可以通过下列代码段 int msg_id; nsg_id=m. 阅读全文
sinal函数原型的分析
2009-10-19 15:46 by htc开发, 207 阅读, 收藏,
摘要:
void (*signal (int signo, void (*func)(int))) (int);乍一看,还以为定义了一个函数指针signal,但如果真是这样,signal后的参数列表又怎么解释?先来看看一些基础知识:1,定义函数指针:return_type (*func_pointer)(parameter_list)2,定义返回函数指针的函数:return_type(*function(func_parameter_list))(parameter_list)定义了一个函数function,该函数的参数列表是(function_patameter_list),返回类型是一个函数指针, 阅读全文
C/C+语言struct深层探索 (转)
2009-10-16 17:38 by htc开发, 205 阅读, 收藏,
摘要:
C/C+语言struct深层探索 作者:宋宝华 出处:PConline 1. struct的巨大作用 面对一个人的大型C/C++程序时,只看其对struct的使用情况我们就可以对其编写者的编程经验进行评估。因为一个大型的C/C++程序,势必要涉及一些(甚至大量)进行数据组合的结构体,这些结构体可以将原本意义属于一个整体的数据组合在一起。从某种程度上来说,会不会用struct,怎样用 struct是区别一个开发人员是否具备丰富开发经历的标志。 在网络协议、通信控制、嵌入式系统的C/C++编程中,我们经常要传送的不是简单的字节流(char型数组),而是多种数据组合起来的一个整... 阅读全文
浙公网安备 33010602011771号