Linux c 学习
文章平均质量分 50
deepxl
这个作者很懒,什么都没留下…
展开
-
CentOS 命令行 Shell 自动补齐 bash-completion
#### 1. 安装 bash-completionyum install -y bash-completion#### 2. 关闭窗口,重新打开原创 2022-03-07 09:27:00 · 913 阅读 · 0 评论 -
ubuntu下设定系统locale,支持中文zh_CN.UTF-8
转自:http://www.1x3x.net/blog/linux-vps/2012/02/vps-how-to-set-locale-in-ubuntu.html先安装一下中文支持,如果喜欢繁体的,language-pack-zh-hantsudo apt-get install language-selector language-env language-pack-z转载 2014-01-03 22:43:05 · 22980 阅读 · 0 评论 -
error: pcap library not found!
Installing "libsqlite3-dev"原创 2013-10-21 21:49:56 · 2597 阅读 · 1 评论 -
链表
来源:Linux C编程一站式学习http://learn.akae.cn/media/ch26s01.html#id2844144 1. 链表 请点评1.1. 单链表 请点评图 23.6 “链表”所示的链表即单链表(Single Linked List),本节我们学习如何创建和操作这种链表。每个链表有一个转载 2012-06-02 15:51:57 · 771 阅读 · 0 评论 -
Linux 中进程几种状态及相关信息
部分内容来源:http://www.njtarena.com/bbs/thread-511-1-1.htmllinux上进程有5种状态: 1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生) 4. 僵死(进程已终止, 但进程描述符存在, 直到父进程翻译 2012-06-09 17:53:57 · 767 阅读 · 0 评论 -
文件IO、目录操作和标准IO\涉及的函数
一、所需的头文件 #include #include #include #include #include 二、文件描述符 0:STDIN_FILENO 标准输入1:STDOUT_FILENO 标准输出2: STDERR_FILENO 标准出错输出 /dev/fd/打开的文件在/dev/fd/下有和打开的描述符值一样的文件,通过打开原创 2012-05-17 18:22:19 · 968 阅读 · 0 评论 -
线程的数据处理
和进程相比,线程的最大优点之一是数据的共享性,各个进程共享父进程处沿袭的数据段,可以方便的获得、修改数据。但这也给多线程编程带来了许多问题。我们必须当心有多个不同的进程访问相同的变量。许多函数是不可重入的,即同时不能运行一个函数的多个拷贝(除非使用不同的数据段)。在函数中声明的静态变量常常带来问题,函数的返回值也会有问题。因为如果返回的是函数内部静态声明的空间的地址,则在一个线程调原创 2012-05-17 17:43:33 · 596 阅读 · 0 评论 -
线程、进程通信---cond=>条件变量
前一节中我们讲述了如何使用互斥锁来实现线程间数据的共享和通信,互斥锁一个明显的缺点是它只有两种状态:锁定和非锁定。而条件变量通过允许线程阻塞和等待另一个线程发送信号的方法弥补了互斥锁的不足,它常和互斥锁一起使用。使用时,条件变量被用来阻塞一个线程,当条件不满足时,线程往往解开相应的互斥锁并等待条件发生变化。一旦其它的某个线程改变了条件变量,它将通知相应的条件变量唤醒一个或多个正被此原创 2012-05-17 17:15:49 · 705 阅读 · 0 评论 -
linux 信号机制、生命
以下部分内容来自于亚嵌课件一、信号及信号来源信号本质信号是在软件层次上对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是异步的,一个进程不必通过任何操作来等待信号的到达,事实上,进程也不知道信号到底什么时候到达。信号是进程间通信机制中唯一的异步通信机制,可以看作是异步通知,通知接收信号的进程有哪些事情发生了。信号机制经翻译 2012-05-17 16:23:17 · 818 阅读 · 0 评论 -
线程、进程通信---mutex=>互斥锁
互斥锁用来保证一段时间内只有一个线程在执行一段代码。必要性显而易见:假设各个线程向同一个文件顺序写入数据,最后得到的结果一定是灾难性的。我们先看下面一段代码。这是一个读/写程序,它们公用一个缓冲区,并且我们假定一个缓冲区只能保存一条信息。即缓冲区只有两个状态:有信息或没有信息。(pthread_delay_np 这个函数只在 POSIX Threads for Window里面有,原创 2012-05-17 17:32:50 · 747 阅读 · 0 评论 -
pthread_mutex_在多线程,多进程相关用法
/*thread_example.c */#include #include #include #include #define MAX 10pthread_t thread[2];pthread_mutex_t mut;int number=0, i;void *thread1(){printf ("thread1 : I'm thread 1\n");for (i =原创 2012-05-17 13:18:34 · 1671 阅读 · 0 评论 -
.htaccess文件
来源:http://www.jbxue.com/article/7127.htm http://www.yzznl.cn/archives/260.html很多站长都见到过.htaccess文件,但是很多人确实不大清楚它的作用。园子今天就给大家说说.htaccess文件使用方法。Apache系统中的.htaccess文件(也称“分布式配置文件”)提供了针对目录改变配置的方法,也就转载 2014-01-21 23:53:56 · 713 阅读 · 0 评论 -
iptable中snat和masquerade的区别
IPtables中可以灵活的做各种网络地址转换(NAT) 网络地址转换主要有两种:SNAT和DNATSNAT是source network address translation的缩写即源地址目标转换 比如,多个PC机使用ADSL路由器共享上网 每个PC机都配置了内网IP PC机访问外部网络的时候,路由器将数据包的报头中的源地址替换成路由器的ip 当外部网络的服务器比如网站web服务器接到转载 2015-07-18 14:57:08 · 1743 阅读 · 0 评论 -
linux下 phpmyadmin 多MySql管理设置
linux下 phpmyadmin 多MySql管理设置:1,拷贝根目录下的config.sample.inc.php文件至根目录下,并命名为config.inc.php2,打开config.inc.php,并为 $cfg['blowfish_secret'] 设置一个非空的任意值3,找到 First server 区域,从这里到 End of servers conf转载 2015-01-17 13:55:02 · 666 阅读 · 0 评论 -
windows PE File introduction
This series is intended to demonstrate and teach operating system development from the ground up.IntroductionWelcome!Yey, this is going to be a long one.This chapter is going to cover an advan转载 2014-10-09 09:14:49 · 1561 阅读 · 0 评论 -
sort awk来过滤文本
awk处理之案例四:sort加awk来过滤文本编译环境 本系列文章所提供的算法均在以下环境下编译通过。【脚本编译环境】Federa 8,linux 2.6.35.6-45.fc14.i686 【处理器】 Intel(R) Core(TM)2 Quad CPU Q9400 @ 2.66GHz 【内存】 2025272 kB前言 awk是脚本中出色转载 2014-04-25 19:13:19 · 529 阅读 · 0 评论 -
Ubuntu 11.10中用xen-tools安装虚拟机
from:http://www.linuxidc.com/Linux/2012-04/58209.htmUbuntu 11.10中可以通过apt-get安装xen-tools,其版本为4.1版本:# apt-get install -y xen-tools由于xen-tools是xen的半虚拟化管理工具,所以需要安装修改过的、支持半虚拟化的kernel。在ubuutu 11转载 2014-03-02 07:54:26 · 801 阅读 · 0 评论 -
old 10.10 to new linux
1.Since 10.10 is now unsupported, you have to use the server old-releases.ubuntu.com for everything. For example a line like:deb http://es.archive.ubuntu.com/ubuntu/ maverick main restricted原创 2014-02-28 19:52:01 · 561 阅读 · 0 评论 -
aptitude
https://linuxtoy.org/archives/aptitude_quick_reference.htmlaptitude 与 apt-get 一样,是 Debian 及其衍生系统中功能极其强大的包管理工具。与 apt-get 不同的是,aptitude 在处理依赖问题上更佳一些。举例来说,aptitude 在删除一个包时,会同时删除本身所依赖的包。这样,系统中不会残留无用的包转载 2014-02-28 20:06:28 · 750 阅读 · 0 评论 -
Installing RPMforge
RPMforge is a collaboration of Dag and other packagers. They provide over 5000 packages for CentOS, including wine, vlc, mplayer, xmms-mp3, and other popular media tools. It is not part of Red Hat or转载 2014-02-28 13:48:22 · 640 阅读 · 0 评论 -
配置Ubuntu Server高速apt-get源
1、修改源地址:cp /etc/apt/sources.list /etc/apt/sources.list.bakvim /etc/apt/sources.list加入如下内容(中科大的):deb http://mirrors.ustc.edu.cn/ubuntu/ precise-updates main restricteddeb-src http://m转载 2014-02-28 00:16:58 · 868 阅读 · 0 评论 -
Using apt in an RPM world
from: http://dag.wiee.rs/blog/using-apt-in-an-rpm-worldEverytime I am surprised that people don't know that apt-get works on RPM-based distributions and works much better than the alternatives.转载 2014-02-28 14:01:54 · 666 阅读 · 0 评论 -
linux 下进程介绍
以下部分内容来自于亚嵌课件1。进程的概念 Linux操作系统是面向多用户的.在同一时间可以有许多用户向操作系统发出各种命令.那么操作系统是怎么实现多用户的环境呢? 在现代的操作系统里面,都有程序和进程 的概念.那么什么是程序,什么是进程呢? 通俗的讲程序是一个包含可以执行代码的文件,是一个静态的文件.而进程是一个开始执行但是还没有结束的程序的实例翻译 2012-05-17 15:45:57 · 612 阅读 · 0 评论 -
C语言复习串讲课堂笔记
来源:http://akaedu.github.com/code/c_notes.html知识点汇总 (以下知识点内容基本按照《一站式编程》章节顺序)程序概念 指令 (代码段) 函数调用 printf() 运算(加法) a + b 条件判断 if 跳转 goto 循环 while 函数返转载 2012-03-23 12:53:41 · 1415 阅读 · 0 评论 -
self .vimrc
自的vim,把这个放在主目录 改 ~/.vimrc 就可用 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" => General Abbrevs"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""iab xdate =strft原创 2012-03-31 14:42:21 · 469 阅读 · 0 评论 -
ssh 使用小技巧
01sudo !!02以 root 帐户执行上一条命令。03 04python -m SimpleHTTPServer05利用 Python 搭建一个简单的 Web 服务器,可通过 http://$HOSTNAME:8000 访问。原创 2012-03-30 20:22:40 · 568 阅读 · 0 评论 -
远程文件共享、制件启动盘,格式盘相关命令
一、关于文件夹建立,远程共享,选项内容太多,主要还是命令,所以写下来慢慢记住就ok 了1.fdisk -l fd dd 使用: (a. sudo dd if=/dev/zero of=ramdisk bs=1024 count=1024x8 //bs =1024 是一个快占多大空间(bit) 1024*8是要分配多少个这样的快; (可以用ls-l ramdisk来看是否原创 2012-03-26 19:38:03 · 656 阅读 · 0 评论 -
Linux c 续小总结
(1)const 标记它所在的内容只读;注意 const char *p="this is a str "两者都不可写;(2)通过变参中有两个或是多个 1、可以返回传入的地址如:char *strcpy(char *dest, const char *src);2、可以返回函数中静态内存的指针; static char *p;3、可以返回动态分配的内存的指针 如:*原创 2012-03-02 19:09:43 · 406 阅读 · 0 评论 -
Bits 位 几道小题
下面是几个关于位操作的几个题,也是老师的课上讲的,自己也听明白了一些,但还是经常范糊涂,在就是也不经常用,但考试说不定也拿来考,所以小总结一下位的常用例子;(1)~0 :可以取到全为1的32个二进制位;(2) 对他实现>> ,(3)在次对他进行& ,| 的操作: 0&1=0; 1&1=1; 0|1=1;,1|1=1;(4)在就是利用的for循环中i的变化实现怎整体移位判断,如: (原创 2012-02-17 13:34:37 · 829 阅读 · 0 评论 -
几种C语言题目 (2)
1.大小写字母转换#include void swap(char str[]){ int i; for (i = 0; str[i]; i++) { if(str[i] >= 'A' && str[i] str[i] += 32; else if(str[i] >= 'a' && s原创 2012-02-13 18:34:35 · 479 阅读 · 0 评论 -
几种C语言题目
//#include // 1. 求n!末尾有多少个零;遍历数中有多少类型的条件;//int main(int argc, const char *argv[])//{ //int n,i; //int g=0; //int tmp; //scanf("%d",&n); //for (i =1;i //原创 2012-02-10 19:50:56 · 566 阅读 · 0 评论 -
vim 编辑器的基本操作
2.2 vim 编辑器的基本操作2.2 vim的基本操作2.2.1 打开vim 编辑器没有的话可以先安装Vim sodu apt-get install vim在命令行下输入vim main.c即可打开vim并编辑名为main.c的文件。2.2.2 输入一串字符刚进入vim时并不是在输入模式,可按下i进入输入模式,这是就可以输入字符串了。2.2.3 回到命令转载 2012-02-07 13:27:06 · 741 阅读 · 0 评论 -
bash Linux 文件判断,if
#!/bin/sh给一个提示,输入内容加入变量read -p "Enter your name:" nameecho "hello $name, welcome to my program"myvar=foodforthought.tar.gz字符串截取:echo $myvarecho ${myvar##*fo} 长echo ${myvar#*fo}原创 2012-02-07 18:54:53 · 1637 阅读 · 1 评论 -
Linux 学习2 符号 比较
算数符号: -eq num2 等于 [ 3 -eq $mynum ]Num1 -ne num2 不等于 [ 3 -ne $mynum ]Num1 -lt num2 小于 [ 3 -lt $mynum ]Num1 -le num2 小于或等于 [ 3 -le $mynum ]Num1 -gt num2 Num1大于 [ 3 -gt $mynum ]Nu原创 2012-02-07 19:21:44 · 518 阅读 · 0 评论 -
DLY 自已的bash ,Terminal 修改 self /.baserc
一,乱码,中文,修改from internet方法一:修改/etc/sysconfig/i18n 文件把里面的LANG="en_US"改成 GB2312就可以了要重启一下机器不用重启,直接# LANG="GB2312"然后就可以了修改 i18n 只是为了重启有效立即生效的方法就是我写出来的那个方法二:#vi ~/.原创 2012-03-24 12:57:33 · 797 阅读 · 0 评论 -
tar
由于linux的tar命令不支持批量解压,所以很多网友编写了好多支持批量解压的shell命令,收集了一下,供大家分享:第一:for tar in *.tar.gz; do tar xvf $tar; donefor tar in *.tar.bz2; do tar xvf $tar; done第二:用tar命令批量解压某个文件夹下所有的tar.gz文件ls *.tar.gz转载 2012-03-31 19:23:14 · 559 阅读 · 0 评论 -
Stack(栈)和Heap(堆)Link Node 小结
1.queue 队列的实现主要是结构本中构造一个管理指针,在通过管理的指针来管理一个列表样子的结点;而且这个结点是通过malloc来分配的。//数据构造:typedef struct node{ void *data; //void *类的数据, struct node *next; //结点指针 } node;原创 2012-03-19 19:12:28 · 625 阅读 · 0 评论 -
排序
//这两种方法考题经常变花着用,害的我转了半天又回到原点;唉,#include void lerSort()// 取最小排序;{ int a[10]={5,4,3,2,1,6,7,8,9,0}; int i,j,pos,tmp; for (i = 0; i < 9; i++) { pos=i; for (j =i+1; j <= 9;原创 2012-02-20 20:34:07 · 402 阅读 · 0 评论 -
Ubuntu下 解决 “没有/dev/fb0”
转自:http://blog.chinaunix.net/uid-26758020-id-3184179.html1. 使用uvesafb修改控制台模式分辨率 安装uvesafb信赖包,查看显卡支持的fb的分辨率 sudo apt-getinstall v86d hwinfo sudo hwinfo--framebuffer2.修改内核配置转载 2012-05-14 18:17:20 · 4137 阅读 · 0 评论 -
Linux线程属性及优先级设置分类
线程的属性由pthread_attr_t 结构类型表示。在使用pthread_attr_t 之前,需要调用pthread_attr_init 对其初始化。pthread_attr_init 为pthread_attr_t 结构里面的各个属性设置默认值。程序可以修改这些值,定制线程的各个属性。在使用完pthread_attr_t 后,需要调用pthread_attr_destroy,完成原创 2012-05-13 18:58:06 · 1318 阅读 · 0 评论