- 博客(26)
- 资源 (5)
- 收藏
- 关注
转载 php基础
<br />PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的WEB站点。本教程并不想让你完全了解这种语言,只是能使你尽快加入开发动态web站点的行列。我假定你有一些HTML(或者HTML编辑器)的基本知识和一些编程思想。 <br /> <br /> 1.简介 <br /> <br /> PHP是能让你天生动态网页的工具之一。PHP代表:超文本预处理器(PHP: Hypertext Preprocessor)。PHP是完全免费
2011-05-20 22:27:00
3412
转载 C 语言的谜题
<br /><br />1、下面的程序并不见得会输出 hello-std-out,你知道为什么吗?<br />#include<br />#include<br />int main()<br />{<br />while(1)<br />{<br />fprintf(stdout,"hello-std-out");<br />fprintf(stderr,"hello-std-err");<br />sleep(1);<br />}<br />return 0;<br />}<br />参考答案:stdo
2010-10-18 20:11:00
477
转载 如何在面试中发现优秀程序员
<br />2010-09-29 09:01 | 8546次阅读 | 来源:外刊IT评论 【已有0条评论】发表评论<br />关键词:面试,程序员,技术 | 感谢朱诗瑶的提供 | 收藏这篇资讯<br /> 导读:找工作时人们总喜欢把简历写得漂亮一点,给面试官留下好印象。那么如何能在漂亮的简历中找出真正可用的优秀程序员呢?面试的问题很重要。本文作者详细介绍了他在面试中的经验,与大家分享,帮你招到优秀的程序员。他将面试大体分为三部分:在第一部分里,我们要做的是看应聘者的简历上写的是
2010-09-29 20:59:00
787
1
转载 c排序算法总结
<br /> 最近参加了几场笔试,发现对于C语言里的排序知识考察的比较多,现在就将这方面的知识加以总结、归纳,以铭记于心。<br /><br />1、稳定排序和非稳定排序<br /> <br /> 简单地说就是所有相等的数经过某种排序方法后,仍能保持它们在排序之前的相对次序,我们就<br />说这种排序方法是稳定的。反之,就是非稳定的。<br /> 比如:一组数排序前是a1,a2,a3,a4,a5,其中a2=a4,经过某种排序后为a1,a2,a4,a3,a5,<br />则我们说这种排序是稳定的,因为
2010-09-28 09:18:00
6461
1
原创 linux下程序开发的基本概念
<br /> 首先,我们认识几个目录。头文件,位于/usr/include目录。头文件包含有常量定义、系统调用和库函数调用的声明。这是系统默认的头文件存放路径,在编译程序时,编译器会自动查找该目录。gcc编译器在编译程序时也可用-I参数指定另外的头文件路径。如:gcc -l /usr/local/myinclude test.h <br />库文件,库是一组已编译的函数集合,可方便我们重用代码。默认存放在/lib和/usr/lib目录。库文件可分为静态和共享两类。<br /> <br />.a,静
2010-09-24 16:41:00
652
原创 正则表达式
下面是自己整理的经常使用的正则表达式举例^ 对行首$ 对行尾^ [ t h e ] 对以t h e开头行[ S s ] i g n a [ l L ] 对匹配单词s i g n a l、s i g n a L、S i g n a l、S i g n a L[Ss]
2010-09-21 18:04:00
368
原创 在SmartARM3250上安装linux系统
<br /> 作为涉足嵌入式的第一步,昨天自己终于动手安装了第一个嵌入式设备——即在SmartARM3250上安装了linux系统,过程比较复杂,中间遇到了很多很不理解的问题,但通过自己的坚持和努力,最终还是让着个系统成功的在这个板子上跑起来了。嘿嘿。。。<br /> 具体的步骤就不说了,因为安装的整个过程有相应的参考书籍和帮助文档,但也有自己几经尝试才成功的,特别是在安装tftp服务器时,为了使主机和目标机能够相互通信,必须将两者的ip配置为同一网段,但又不知道目标机的ip,最后发现,在
2010-09-19 09:24:00
689
原创 初涉内核模块编程
添加内核模块有两种方法:一种是在内核源码里面添加自己的模块文件,以及Makefile和Kconfig,然后重新编译内核使之融入内核;另一种是动态添加,自己写好内核模块并编译,然后使用命令insmod、rmmod动态添加和删除模块。这里我分别讲解两种添加模块的方法。Makefile与Kconfig一、手动添加 进入系统的内核源码目录,并创建要添加的模块文件夹 test |-- cpu | |-- cpu.c |
2010-09-17 08:02:00
668
原创 ubuntu 10.04下安装fcitx(小企鹅输入法)
<br /> 最近ubuntu 10.04自带的输入法ibus用的很是不爽,它与google-chrome浏览器出现兼容性问题。bug重重... 所以就决定换小企鹅试试<br /> <br /> 首先,在终端下面输入命令 sudo apt-get install im-switch libapt-pkg-perl fcitx<br /> <br /> 安装好之后执行下面的命令使系统默认fcitx为默认输入法<br /> <br /> im-switch -s fcitx<br
2010-09-15 10:46:00
916
转载 file_operation(文件操作)file(文件)inode(节点)
<br /><br />file_operation(文件操作)file(文件)inode(节点)<br />file_operation就是把系统调用和驱动程序关联起来的关键数据结构。这个结构的每一个成员都对应着一个系统调用。读取file_operation中相应的函数指针,接着把控制权转交给函数,从而完成了Linux设备驱动程序的工作。<br /> 在系统内部,I/O设备的存取操作通过特定的入口点来进行,而这组特定的入口点恰恰是由设备驱动程序提供的。通常这组设备驱动程序接口是由结构file_oper
2010-09-14 11:46:00
1620
转载 Linux文件特殊权限 SUID/SGID/Sticky Bit
前面一直提到文件的重要权限,就是rwx这3个读、写、执行的权限。但是,怎么 /tmp权限有些奇怪?还有, /usr/bin/passwd也有些奇怪,怎么回事呢?[root@linux ~]# ls -ld /tmp ; ls -l /usr/bin/passwddrwxrwxrwt 5 root root 4096 Jul 20 10:00 /tmp-r-s--x--x 1 root root 18840 Mar 7 18:06 /usr/bin/passwd不是只有rwx吗?为什么还有其他的特殊权限呢?不
2010-09-08 11:44:00
410
原创 基于list.h的简单学生管理系统
这两天看了linux内核里面经典的list.h文件,看的似懂非懂,心想要是就这样放过去了,过段时间肯定连影子记不起来了,所以决定自己动手试试,能否将这个文件里面的函数和宏应用起来。想法很完美,但时间起来确实费了不少周折,但后来想想收获到的东西,心理感觉还是蛮有成就的。。。好了,具体的过程就不多说了,代码贴出来先~首先是自己定制的"list.h"文件“mylist.h”,(也就是把程序中要用到的宏和函数粘出来另存)。#ifndef _LINUX_LIST_H#define _LINUX_LIS
2010-09-05 12:16:00
673
原创 list.h中宏list_entry宏的解析与应用
list_enty这个宏算是内核里面比较复杂的宏了。下面就对它的结构进行解析。宏的结构为:#define list_entry(ptr, type, member) / container_of(ptr, type, member) 这个宏的作用是通过ptr指针获取type的地址,其中ptr是member的指针,member是type结构的成员。这个宏里面包含另外一个宏,container_of。这个宏位于/linux/kerner.h,它的结构为:#define container_of(ptr
2010-09-02 18:56:00
793
转载 Linux环境下的Socket编程
<br />什么是Socket <br /> Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。 <br /> Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket了。网络的Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符。Socket也具有一个类似于打开文
2010-08-29 11:24:00
456
原创 ubuntu下更改语言环境
当你第一次安装ubuntu系统时,在选择安装语言环境时,大家一般都选择了中文安装界面,特别是不习惯英文显示的朋友。那么,当你安装玩系统后,因为系统中没有支持中文语言环境的相关包,而显示乱码时该怎么办呢?对于使用ubuntu desktop版的朋友来说,则就是安装中文语言支持环境咯!1.desktop打开“语言支持”对话框(见右图)。单击主菜单中的“系统(System) --> 系统管理(Administration) --> 语言支持(language support)”。在“支持的语言”列表中
2010-08-28 11:54:00
9608
1
原创 程序安全性问题揭秘
<br /> 今天在看书的过程中发现书上说strcpy函数很不安全,最好别用。我怀着好奇的心情去看个究竟,看看这个函数不安全在什么地方。首先晒出自己写的这个“很危险”的strcpy!<br /> #include <stdio.h>#include <stdlib.h>#define STR_SIZE 100#define BUF_SIZE 100char *my_strcpy(char *sour, char *dest){ char *temp=dest;
2010-08-26 22:01:00
694
原创 谈谈怎样将“别人的”变成“自己的”
<br /> 这段时间一直在看《Linux C编程实战》这本书,看的时候基本上就是一遍过去了,不会太深究每个函数,每个参数的用法。遇到程序时分析、理解一下。可是,当我撇开程序,自己想到一个题目,想通过最近所学的知识将其实现,但确半天没有一点思路,我想,这是编程能力缺乏的一种表现,但就竟该怎样弥补呢?怎样才能把别人的知识转换为自己的。。。?<br /> 知识是通过积累得到的,学到的东西就应该去用。自学就是这样自己不断的摸索,应该是通过一次次的失败,碰壁才掌握的,应该多给自己实践的机会,而不
2010-08-26 17:26:00
624
原创 virtualbox:实现ubuntu主机与虚拟xp文件共享
<br /> 以前自己总在Windows下虚拟Linux系统,偶尔用来玩玩。现在限于长期在Linux下学习,决定也尝试着在Linux下面虚拟个Windows,以备不时之需。。。听说virtualbox这个软件轻巧,强大,变自己动手sudo apt-get install virtualbox-ose了一下。<br /> 安装好虚拟机后,接下来就是安装Windows xp了,这个就不多说了(一路回车。。。),安装好这些后,要实现文件共享,除了建立ftp站点外,virtualbox还提供了一个很强大
2010-08-21 21:31:00
1047
原创 文件存取权限与设置set_uid位
<br />首先,声明几个概念:<br />实际用户表示符(UID):该标识号负责标识运行进程的用户<br />有效用户表述符(EUID):该标识号负责标识以什么用户身份来给新创建的进程赋所有权、检查文件的存取权限和检查通过系统调用kill向进程 发送软中断信号的许可权限<br />实际用户组表示符(GID):负责标识运行进程的用户所属的组ID<br />有效用户组表述符(EGID):用来标识目前进程所属的用户组<br /> <br
2010-08-19 12:32:00
3412
转载 shell十三问
<br />shell 十三问:<br /><br />1) 为何叫做 shell ? <br /><br />2) shell prompt(PS1) 与 Carriage Return(CR) 的关系? <br /><br />3) 别人 echo、你也 echo ,是问 echo 知多少? <br /><br />4) " "(双引号) 与 ' '(单引号)差在哪? <br /><br />5) var=value?export 前后差在哪?<br /><br />6) exec 跟 source
2010-08-17 10:41:00
495
转载 学习linux网络编程
学习Linux网络编程Linux系统的一个主要特点是他的网络功能非常强大。随着网络的日益普及,基于网络的应用也将越来越多。 在这个网络时代,掌握了Linux的网络编程技术,将令每一个人处于不败之地,学习Linux的网络编程,可以让我们真正的体会到网络的魅力。 想成为一位真正的hacker,必须掌握网络编程技术。现在书店里面已经有了许多关于Linux网络编程方面的书籍,网络上也有了许多关于网络编程方面的教材,大家都可以 去看一看的。在这里我会和大家一起来领会Linux网络编程的奥妙,由于我学习Linux的网络
2010-08-14 20:30:00
608
原创 感悟
<br /> 深入接触linux是从《Linux C编程实战》这本书开始的,感觉书中讲的很不错,从C的基础开始,举了很多有用的例子和一些经典的面试题,使我对c语言了解稍微进了一个层次,慢慢感觉到C语言所用之处以及它的特点。<br /> 其实C语言的工作环境大多是在系统级,对设备,文件,内存的分配与管理上的。因此它就要求有很高的效率(从时间和空间上),始终追求以最简短的代码完成复杂的功能。限于以前学习到的都是些基础中的基础,现在看这些高级用途也蛮费劲的,特别是最近涉及到linux系统调用,那些
2010-08-12 20:15:00
376
原创 C语言相关
<br /> <br />一、在多重循环中,应将最忙的循环放在最内层,以减少CPU切入循环层的次数。<br />二、Linux内核版本号由3部分组成:主版本号、次版本号和次次版本号。例如,2.4.20-8,2是主版本号,4是次版本号,20是次次版本号,最后的数字是被修订的次数。<br />三、路径的表示方法有两种:一种是从根目录开始的,称为绝对路径;另一种是从当前目录开始的,称为相对路径。<br />四、字符常量存储的是它的ASCII码(用一个字节)<br /> 字符变量:字符型变量实质上是一个8位的数
2010-08-12 19:59:00
456
转载 linux下的脚本语言Perl和Python
Perl是由Larry Wall设计的,并由他不断更新和维护的编程语言。Perl具有高级语言(如C)的强大能力和灵活性。事实上,你将看到,它的许多特性是从C语言中借用来的。与脚本语言一样,Perl不需要编译器和链接器来运行代码,你要做的只是写出程序并告诉Perl来运行而已。这意味着Perl对于小的编程问题的快速解决方案和为大型事件创建原型来测试潜在的解决方案是十分理想的。Perl提供脚本语言(如sed和awk)的所有功能,还具有它们所不具备的很多功能。Perl还支持sed到Perl及awk到Perl的翻译器
2010-07-30 11:41:00
1118
1
原创 初学shell笔记——基础篇
一、test命令内置选项-d 检查文件是否存在以及该文件是否是目录文件-e 检查文件是否存在-f *** ***该文件是否是一个普通文件-r *** ***该文件是否可读-s *** ***该文件是否大于0字节-w *** ***该文件是否可写-x *** ***该文件是否可执行二、gcc调试选项gcc -g 选项使得生成的可执行文件具有gdb调试特性三、内置的符号命令() 子shell
2010-07-29 21:45:00
691
1
原创 雄关漫道真如铁 而今迈步从头越
大三的下半学期在忙碌中就这样结束了。就这样,我满怀希望的来到了这个新的集体“linux 3+1”,我期望在这里获取的很多...(技术上、思想上,以及其他做人方面的知识。) 在刚开始的这两周里,就是先熟悉Linux这个环境了。还好学过一些linux‘的基础,入手起来不是那么的困难,感觉自己在这方面挺有兴趣的。希望自己能够保持这份热情,不懂就问身边的高手们,能够很快也步入一个高的台阶上,为学习更新的知识做铺垫... 加油!
2010-07-24 17:26:00
2410
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人