- 博客(16)
- 收藏
- 关注
原创 奇特的MySql
MySQL是一个关系型数据库管理系统。与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQL Cluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。对于...
2018-08-20 18:56:17 1075
转载 进程
每个进程在内核中都有一个进程控制块(PCB)来维护进程相关的信息,Linux内核的进程控制块是task_struct结构体进程id。系统中每个进程有唯一的id,在C语言中用pid_t类型表示,其实就是一个非负整数。 进程的状态,有运行、挂起、停止、僵尸等状态 进程切换时需要保存和恢复的一些CPU寄存器。 描述虚拟地址空间的信息。 描述控制终端的信息。 当前工作目录(Current W...
2018-08-20 18:55:09 166
转载 线程
有些情况需要在一个进程中同时执行多个控制流程,这时候线程就派上了用场,比如实现一个图形界面的下载软件,一方面需要和用户交互,等待和处理用户的鼠标键盘事件,另一方面又需要同时下载多个文件,等待和处理从多个网络主机发来的数据,这些任务都需要一个“等待-处理”的循环,可以用多线程实现,一个线程专门负责与用户交互,另外几个线程每个线程负责和一个网络主机通信。由于同一进程的多个线程共享同一地址空间,...
2018-08-20 18:54:26 184
原创 C不关闭FILE*
如果以“w”打开一个文件,写入数据后,没有关闭,紧接着又以“r”打开该文件,此时不能正确读取文件内容,ftell文件为0,但是文件中却成功写入了数据。想要读取内容,要在写入操作后进行指针的移动(fseek,rewind等)才能读取。FILE * fp = fopen("qqq","w");int a=11120;fwrite(&a,1,sizeof(a),fp);prin...
2018-08-20 18:53:28 453
原创 VOID *P 类型
在C中,void类型只能定义指针,不能定义变量。void *p; //void p; //错误 void 指针一般在函数中使用,可实现泛型接口。当用void指针只想一处内存时,运用应该仔细。#include <stdio.h>#include <stdlib.h>void main(){...
2018-08-20 18:52:52 2990
原创 STRUCT的内存
在C语言中,结构体的内存是由先到后顺序占用空间的。先定义的在低地址,后定义的在高地址。地址采用空间对其策略。其实这是一篇问题贴,一直没有弄懂是什么问题!!!在结构体内存中结构体首元素地址和结构体首地址一致。(C++不一致),c++中,一般会空出开始的4字节,为了区别对象地址,和第一个成员的地址。通常是1字节,但是字节对齐的时候,就占用了4字节。实际上,你看到sizeof(空结构体...
2018-08-20 18:52:23 414
原创 C 指针与地址的不同
我们初学时经常把指针当成地址用,其实指针和地址是有差别的。 指针是一个变量,存放的是地址。很好理解,但是当指针存放字符串地址时,就麻烦多了。假设有一个字符串char a[22]="4544adas44456";char *p = a; printf("%p\n",p); //0x7ffdf03a6010printf("...
2018-08-20 18:51:53 1713
原创 C在LINUX的栈区空间分配
声明:栈区空间的介绍我就不陈述了,下面几句话是在别人在网上的总结。栈空间是由系统自动分配,速度较快。在Linux下,栈是向低地址扩展的数据结构,是一块连续的内存的区域。这句话的意思是栈顶的地址和栈的最大容量是系统预先规定好的。栈中存放函数的参数值,局部变量的值等,堆区是向上增长的用于分配程序员申请的内存空间。另外还有静态区是分配静态变量,全局变量空间的;只读区是分配常量和程序代码空间的;以...
2018-08-20 18:51:17 1956
原创 C的++运算符
一直以为自己会++的操作与逻辑,但是每次都碰壁,然后就各种实验和总结,当反复确认自己熟记后,然而又忘了。所以好记性不如烂笔头,简单的东西也要写笔记!下面对C语言在++运算符总结: 自增运算符(++),分为前缀形式(++x)和后缀形式(x++)。当表达式中只有一个自增运算符时,比较简单。但是当一个表达式中存在多个++时,会发生什么?答案当然不止一种,不同语言可能不同,不同编译...
2018-08-20 18:50:46 5337
原创 EXTERN和STATIC与INCLUDE的冲突
test.cpp://#include "test.h"#include <iostream>using namespace std;/*static*/ char *str = "我是 test.cpp 文件的 str";void show(){/*cout <<str;*/} test.h:/*stat...
2018-08-20 18:49:39 745
原创 Linux下的环境变量
环境变量(Environment Variable):系统范围中具有特别意义的变量,决定了shell将到哪些目录中寻找命令或程序。一些常用的命令:env:打印所有环境变量set:打印所有环境变量(包括局部)echo $环境变量名:打印制定环境变量的值export 环境变量名=环境变量值:设置环境变量declare 环境变量名=环境变量值:定义新环境变量 注意:在...
2018-07-16 19:54:45 204
原创 Linux系统的打包和压缩命令总结
Linux系统下有很多压缩和打包的命令,下面是我的总结。Linux系统下有的没有zip等命令,所以我们需要安装才能执行。下载地址:http://linux.softpedia.com/progDownload/UnZip-Download-389.html我这里用的是CentOS7,安装命令是:yum install -y unzip zipzip格式:压缩: zip -...
2018-07-16 19:40:22 171
原创 Linux系统下各目录的作用
文件系统管理(File System Manangement)/:根目录/etc:存放系统或应用软件的各种配置文件/home:存放每个普通用户的主文件夹/root:root用户的主文件夹/bin:binary,存放常用的一些命令(即可执行程序)/sbin:super binary,存放系统管理员的常用命令/lib:存放库文件/proc:伪文件系统,存放系统的硬件配置或状态信息/media:自动挂载...
2018-07-13 18:11:03 237 1
原创 shell命令入门
Shell命令:特点: 强大 高效 枯燥 难度大 1. 电源管理(关机、重启)poweroff: 关机reboot: 重启halt: 关机shutdawn:关机或重启,常用参数-r表示重启,-h表示关机 2. 进程(任务)管理ps:进程快照,常用参数 -ef,auxtop:实时查看系统中的所有进程kill:杀死进程,常...
2018-07-12 19:28:40 281
原创 入手Linux系统
进军Linux系统前,我们先来了解操作系统。操作系统 (Operating System,简称OS):操作系统是软硬件资源的管理者,它本身也是一个特别复杂的软件,直接运行在“裸机”上的系统软件。其上为应用程序提供运行平台,其下对各种硬件进行分管理。主流操作系统: PC: Windows, OS X, Linux 服务器(server):Unix/Linux, Windows Ser...
2018-07-12 19:21:28 309 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人