- 博客(66)
- 收藏
- 关注
原创 LAMP架构网站的简单备份
我觉得LAMP做的网站只需要备份mysql数据库和wordpress的目录就可以了,所以后面只备份了这两个东西。方法很简单,就是写一个脚本通过scp把备份的文件传到另一台主机,然后利用cron每天定时执行脚本。首先得先有一台放备份文件的主机,我用的是帮帮给我的一个虚拟机(如果帮帮能看到的话,在此致谢),以前在网上看到过有人利用百度云来备份网站,等有空研究研究,百度云3GB的免费空间可真是不小。
2014-04-27 17:55:51
366
原创 Vim常用的基本按键
打开语法高亮 syntax on显示行号 set nu取消行号 set nu!打开文件时,光标在指定行 vi +n filename打开文件时,光标在指定字符串 vi +/str filename另存为其他文件 w filenameH 移动光标到屏幕首行的行首(前面可加数字)M 移动光标到屏幕显示文件中间行的行
2014-04-27 17:55:13
254
原创 LAMP架构网站的简单备份
我觉得LAMP做的网站只需要备份mysql数据库和wordpress的目录就可以了,所以后面只备份了这两个东西。方法很简单,就是写一个脚本通过scp把备份的文件传到另一台主机,然后利用cron每天定时执行脚本。 首先得先有一台放备份文件的主机,我用的是帮帮给我的一个虚拟机(如果帮帮能看到的话,在此致谢),以前在网上看到过有人利用百度云来备份网站,等有空研究研究,百度云3GB的免费空间
2014-04-27 17:52:10
147
原创 Vim中显示中文字符的方法
在vimrc文件中加入:set fileencodings=utf-8,gb2312,gbk,gb18030set termencoding=utf-8set fileformats=unixset encoding=prc可以在用户目录下新建.vimrc文件,也可以直接修改/etc/vim/vimrc
2014-04-23 17:14:01
471
原创 在VirtualBox中安装黑苹果的全屏问题
我的安装环境:Windows 8.1 64位 VirtualBox 4.3.10 Mac OS X 10.9安装完成后,黑苹果在VirtualBox中不能全屏,很不美观,尝试了网上很多方法都不成功,最终在一个国外网站发现了可用方法:1. 首先确认自己的Host机器的分辨率,比如我的笔记本分辨率为1920x1080,色深一般都是32位,所以分辨率为1920x1080
2014-04-20 19:43:03
1098
原创 在VirtualBox中安装黑苹果的全屏问题
我的安装环境:Windows 8.1 64位 VirtualBox 4.3.10 Mac OS X 10.9安装完成后,黑苹果在VirtualBox中不能全屏,很不美观,尝试了网上很多方法都不成功,最终在一个国外网站发现了可用方法:1. 首先确认自己的Host机器的分辨率,比如我的笔记本分辨率为1920x1080,色深一般都是32位,所以分辨率为1920x1080
2014-04-20 19:35:01
314
原创 在VirtualBox中安装黑苹果的全屏问题
在VirtualBox中安装黑苹果的全屏问题我的安装环境:Windows 8.1 64位 VirtualBox 4.3.10 Mac OS X 10.9安装完成后,黑苹果在VirtualBox中不能全屏,很不美观,尝试了网上很多方法都不成功,最终在一个国外网站发现了可用方法:1. 首先确认自己的Host机器的分辨率,比如我的笔记本分辨率为1920x
2014-04-20 19:29:22
417
原创 scanf函数和fflush函数
昨天晚上写了下面这个测试程序,发现如果输入1 2 3 程序输出为123#include int main(int argc, char **argv){ int a; while (1){ scanf(“%d”, >a); printf(“%d\n”, a); } return 0;}怀疑为输入缓冲区的问题,当时记得
2014-04-20 10:07:58
463
转载 函数 - 关于变量(auto、static、register、extern、volatile、restrict)
1. 局部变量:局部变量也叫自动变量, 它声明在函数开始, 生存于栈, 它的生命随着函数返回而结束.#include int main(void){ auto int i = 9; /* 声明局部变量的关键字是 auto; 因可以省略, 几乎没人使用 */ printf("%d\n", i); getc
2013-10-21 14:42:14
226
转载 函数 - 关于变量(auto、static、register、extern、volatile、restrict)
1. 局部变量:局部变量也叫自动变量, 它声明在函数开始, 生存于栈, 它的生命随着函数返回而结束.#include int main(void){ auto int i = 9; /* 声明局部变量的关键字是 auto; 因可以省略, 几乎没人使用 */ printf("%d\n", i); getchar(); return
2013-10-21 14:40:55
91
转载 auto、register、static、extern等存储类修饰符的区别
auto、register、static、extern等存储类修饰符的区别一、标识符的链接(linkage)(1)外部链接表示在整个程序中(多个程序文件)是相同的函数或对象。常见的有,在函数体外声明的extern变量。(2)内部链接表示只在当前程序文件中是相同的函数或对象。其它程序文件不能对其进行访问。常见的有,在函数体外声明的static变量。(3)无链接
2013-10-21 13:25:16
222
原创 位运算 计算一个int整数的二进制形式中有几位是1
#include int main(int argc, char **argv){ while(1){ int num, count = 0; printf("Please input the num:"); scanf("%d", &num); if(num % 2 != 0 || num == 1) count ++; while(num > 1){ num =
2013-10-20 19:18:04
304
转载 将二进制字符串转化为十进制
#include int bin_dec(char *p);char * pbin = "00000101";int main(void){ printf("bin: %s is dec: %d\n", pbin, bin_dec(pbin)); return 0;}int bin_dec(char *p){ int dec=0; while(*p != '\0'){ p
2013-10-20 16:33:31
563
转载 位运算加速技巧
1. 如果乘上一个2的倍数数值,可以改用左移运算(Left Shift) 加速 300%x = x * 2;x = x * 64;//改为:x = x 1x = x 62. 如果除上一个 2 的倍数数值,可以改用右移运算加速 350%x = x / 2;x = x / 64;//改为:x = x >> 1;// 2 = 21x = x >
2013-10-20 15:12:54
229
原创 使用位操作对数字进行反转位
#include #include #define SIZE 8 * sizeof(int)#define BYTE_MASK 01int func(int num, int bit){ int mask = 0; int bitval = 1; while(bit -- > 0){ mask |= bitval; bitval <<= 1; } return
2013-10-20 13:42:57
313
转载 高效“神奇”的位操作符
& |^ ~ >只能用于整数,其中和>>操作符是双目操作符,它们的右操作数必须为非负整数;左移运算,空位都用0填充;右移运算,unsigned类型空位用填充,signed类型空位有的用0填充,有的用符号位填充,取决于具体实现;功能 示例
2013-10-19 23:49:02
253
转载 给力!高效!易懂!位运算求组合
引例先来看一道题目,这个题目是理解利用位操作求组合的关键。它是POJ的2453。英文原题就不贴了,我用中文描述一下吧:给定一个正整数N,求最小的、比N大的正整数M,使得M与N的二进制表示中有相同数目的1。上面的题目描述或许有点拗口,举个例子把,假如给定的N为78,其二进制表示为1001110,包含4个1,那么最小的比N大的并且二进制表示中只包含4个1的数是83,其二进制是10100
2013-10-19 23:37:54
230
原创 利用位操作移位实现打印二进制
#include #include #define SIZE 8 * sizeof(int)void print(char *str){ int i = 0; while(str[i] != '\0'){ putchar(str[i]); if(++i % 4 ==0 && str[i]) putchar(' '); } puts(""); }void
2013-10-19 23:17:19
300
原创 位操作移位的一个简单应用
#include #define BYTE_MASK 0xffint main(int argc, char **argv){ unsigned long color = 0x002a162f; unsigned char blue,green,red; red = color & BYTE_MASK; green =
2013-10-19 20:33:19
239
转载 神奇的位运算及其简单应用
学过C/C++一定学过位运算,但是大多数教科书上仅仅介绍了运算符的基本用法,没有提到位运算的应用,借此,本人特地收集了位运算的基本应用,希望大家能体会位运算的奥妙之处。首先还是先介绍一遍一些基本的运算符:&(按位与)、|(按位或)、^(按位异或)、~ (按位取反)、>> (右移运算)、以下文章仅仅对位运算做抛砖引玉,其他进阶应用会在今后的文章中补充!1. 变量交换首
2013-10-17 18:26:07
202
原创 大端存储和小端存储
端模式(Endian)的这个词出自JonathanSwift书写的《格列佛游记》。这本书根据将鸡蛋敲开的方法不同将所有的人分为两类,从圆头开始将鸡蛋敲开的人被归为BigEndian,从尖头开始将鸡蛋敲开的人被归为LittileEndian(这句话最为形象)。小人国的内战就源于吃鸡蛋时是究竟从大头(Big-Endian)敲开还是从小头(Little-Endian)敲开。在计算机业BigEnd
2013-10-14 20:06:21
243
原创 strlen和sizeof
strlen添加义项这是一个多义词,请在下列义项中选择浏览1.C语言函数2.php语言函数 1.C语言函数编辑本义项strlen求助编辑百科名片strlen所作的仅仅是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到碰到第一个字符串结束符'\0'为止,然后返回计数器值。目录函数简
2013-10-14 20:06:19
247
原创 linux开机启动图形程序
周五有一个想法,让linux系统开机后,进入图形界面,然后自启动终端-全屏-隐藏菜单栏;上网查了一下开机自启动的东西,大部分都是讲的一些后台运行的脚本,关于图形程序的开机启动并不多;开机启动最常用的就是rc了,例如rc.local.但是这个rc的启动应该是在加载桌面之前,所以当我把启动终端的命令写进rc.local时,并不起作用。然后,看到有人说要在bash的配置文件中添加,我在$HOM
2013-10-14 20:06:17
402
原创 C语言文件操作函数大全
clearerr(清除文件流的错误旗标)相关函数 feof表头文件 #include定义函数 void clearerr(FILE * stream);函数说明 clearerr()清除参数stream指定的文件流所使用的错误旗标。返回值 fclose(关闭文件)相关函数 close,fflush,fopen,setbuf表头文件 #include定义函数 int fclose
2013-10-14 20:06:15
316
原创 /etc/profile和/etc/environment
/etc/profile和/etc/environment的比较 先将export LANG=zh_CN加入/etc/profile ,退出系统重新登录,登录提示显示英文。将/etc/profile中的exportLANG=zh_CN删除,将LNAG=zh_CN加入/etc/environment,退出系统重新登录,登录提示显示中文。用户环境建立的过程中总是先执行/etc/
2013-10-14 20:06:13
206
原创 linux解压 tar命令
tar [-cxtzjvfpPN] 文件与目录 ....参数:-c :建立一个压缩文件的参数指令(create 的意思);-x :解开一个压缩文件的参数指令!-t :查看 tarfile 里面的文件!特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩。-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?-j :是否同时
2013-10-14 20:06:11
198
原创 Ubuntu下tar命令详解使用
格式: tar 选项 文件目录列表功能: 对文件目录进行打包备份选项:-c 建立新的归档文件-r 向归档文件末尾追加文件-x 从归档文件中解出文件可以这样记忆,创建新的文件是c,追加在原有文件上用r,从文件中解压出用x-O 将文件解开到标准输出-v 处理过程中输出相关信息-f 对普通文件操作 ---似乎一直都要用f,不然的话,可能会不显示-z 调用gz
2013-10-14 20:06:09
218
原创 Linux下的软链接和硬链接
Linux下的软链接和硬链接,文件拷贝的区别总结如下:硬链接:在磁盘上有一份内容一样的文件产生,但不改变文件的Inode,也就是与原文件共用Inode,软链接:不在磁盘上有一份内容一样的文件产生(),但产生新的Inode,文件复制:产生新的文件内容,并且使用新的Inode.简单的说软链接相当于快捷方式。----------------------------------------
2013-10-14 20:06:06
194
原创 source命令
source命令用法:source FileName作用:在当前bash环境下读取并执行FileName中的命令。注:该命令通常用命令“.”来替代。如:source .bash_rc 与 . .bash_rc 是等效的。注意:source命令与shell scripts的区别是,source在当前bash环境下执行命令,而scripts是启动一个子shell来执行命令。这样如果把设置环
2013-10-14 20:06:04
209
原创 du与ls的区别
du == disk usage (磁盘使用量,占用的磁盘空间)一个文件占用的磁盘空间和一个文件的大小是两码事情。占用空间取决于文件系统的块(block)的大小,linux一般默认是4k(4096),因此,一个大小为1个字节的文件,最小也要占用4k,如果你创建文件系统的时候制定块大小是16K,那么即便一个文件只有1个字节,占用空间也是16K。如果一个分区上主要放大文件,那么block可
2013-10-14 20:06:02
241
原创 Copying
NOTE! This copyright does *not* cover user programsthat use kernel services by normal system calls -this is merely considered normal use of the kernel, and does *not* fallunder the heading of "de
2013-10-14 20:06:00
298
原创 如何成为一名优秀的程序员
我们的老师每天都要应对报名者和学员提出的很多同样的问题,以下是这类典型问题的汇总:嵌入式行业(或者IT业)有没有前途?我听说编程编到三十五岁就没人要了,一定要转行找出路是吗?做驱动开发和做应用开发哪个更有前途?我一开始看什么书都看不懂,怎么才能理出一个学习顺序?诸如此类。这使我迫切地感觉到,应该总结这样一份非具体技术问题的FAQ了。本文仅代表我个人观点,有问题欢迎Email:songjinsha
2013-10-14 20:05:58
255
原创 gcc和g++
gcc和g++都是GNU(组织)的一个编译器。误区一:gcc只能编译c代码,g++只能编译c++代码两者都可以,但是请注意:1.后缀为.c的,gcc把它当作是C程序,而g++当作是c++程序;后缀为.cpp的,两者都会认为是c++程序,注意,虽然c++是c的超集,但是两者对语法的要求是有区别的。C++的语法规则更加严谨一些。2.编译阶段,g++会调用gcc,对于c++代码,两者是等价的,但是
2013-10-14 20:05:56
218
原创 二进制和文本文件的比较
一).一般问题 二进制文件与我们通常使用的文本文件储存方式有根本的不同。这样的不同很难用言语表达,自己亲自看一看,理解起来会容易得多。因此,我推荐学习二进制文件读写的朋友安装一款十六进制编辑器。这样的编辑器有很多,在我们的 CVF 附带的集成开发环境下就可以(将二进制文件拖动到 IDE 窗口后松开)。Visual Studio 2005 也是可以的。(不过需要在 File 菜单下 Open,Fi
2013-10-14 20:05:54
235
原创 如何在C语言中实现简单的泛型编程(…
回忆上一篇的最后一个函数:void* lsearch(void* key,void* base,int n,int elemSize,int (*cmpfn)(void*,void*)){ for(int i=0;i<n;++i){ void* elemAddr=(char *)base+i*elemSize;
2013-10-14 20:05:51
204
原创 如何在C语言中实现简单的泛型编程(…
泛型编程让你编写完全一般化并可重复使用的算法,其效率与针对某特定数据类型而设计的算法相同。所谓泛型(Genericity),是指具有在多种数据类型上皆可操作的含意。C++通过参数化类型来实现通用的容器。如Java则引入了单根继承的概念。比泛型更加让你熟悉的可能就是STL,Standard template library,标准模板库。STL是一种高效、泛型、可交互操作的软件组件。STL以迭代器
2013-10-14 20:05:49
451
原创 关于函数strtok和strtok_r的使用要…
1.一个应用实例网络上一个比较经典的例子是将字符串切分,存入结构体中。如,现有结构体typedef struct person{ char name[25]; char sex[10]; char age[4];}Person;需从字符串 char buffer[INFO_MAX_SZ]="Fred male 25,John male 62,Annafemale
2013-10-14 20:05:47
184
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人