- 博客(16)
- 收藏
- 关注
原创 go语言入门(流程控制,函数,错误处理)
条件语句 if a<5 { todo() } else { } 注意以下几点: 条件语句不需要使用括号将条件包含起来 () ; 无论语句体内有几条语句,花括号 {} 都是必须存在的; 左花括号 { 必须与 if 或者 else 处于同一行; 在 if 之后,条件语句之前,可以添加变量初始化语句,使用 ; 间隔; 在有返回值的函数中,不允许
2017-08-19 20:26:58
450
原创 go语言入门
变量 用关键字var声明变量 var v1 int //int类型 var v2 string //string类型 var v3 [10]int //数组 var v4 []int //数组切片 var v5 struct{ f int } var v6 *int //指针 var v7 map[string]int //map
2017-08-19 18:32:44
247
原创 信号(1)
信号是软中断,信号提供了一种异步处理事件的方法概念 信号都被定义为正整数常量,在头文件signal.h中定义. 不存在编号为0的信号信号产生 用户按某些终端键时,引发终端产生的信号。(ctrl+c产生SIGINT信号) 硬件异常产生信号(除数为0,无效的内存访问(产生SIGSEGV信号)等),这些条件有硬件检测到,并通知内核。然后内核为该条件发生时正在运行的进程产生适当的信号。
2017-08-17 21:17:37
281
原创 vim插件
安装vindle 个人目录下新建.vim/bundle/vundle文件夹,git下载vundle插件到此位置 git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle进行一些配置 1 set nu 2 set tabstop=4 3 set autoindent 4 set nocompati
2017-08-16 20:16:58
293
转载 vim编辑器-分屏
vim分屏显示分屏启动vim使用大写的O来垂直分屏启动vim(n代表分为几个屏幕) vim -On file1 file2使用小写的o来水平分屏启动vim(n代表分为几个屏幕) vim -on file1 file2分屏上下分割打开当前的文件(同一个文件) ctrl+w s (先同时按下ctrl+w,再按s)上下分割载入新文件(filename在上方) :sp filename
2017-08-15 21:41:06
348
原创 vim命令
光标移动 命令 效果 h 左移动 j 上移动 k 下移动 l 左移动 w 移动到下一个单词 b 移动到上一个单词插入 命令 效果 i 当前光标处插入 I 行首插入 a 当前光标后一个位置插入 A 行末插入 o 当前行下面一行插入新行 O 当前行前一行插入新行 cw 替换一个单词保存
2017-06-17 23:44:21
261
原创 C++ 引用、指针、const
C++ 引用、指针、const引用 引用就是对象的一个别名,常用作函数的形式参数。通过在变量名前加“&”来定义。不能定义引用类型的引用,什么是引用类型的引用? int a = 10;int& b = a;int& c = b;//上面代码可以编译通过,且可运行,c的值也为10int&& d = c; //编译不通过,这是引用类型的引用,就如int** p是指针的指针同理
2016-08-12 16:21:59
312
原创 网络编程(1)
套接字1.套接字地址结构 套接字编程需要指定套接字的地址作为参数,不同的协议族有不同的地址结构定义方式。这些地址结构通常以sockaddr_开头,每一个协议族有一个唯一的后缀,例如对于以太网,其结构名称为sockaddr_in。1.1 通用套接字地址结构/*套接字地址结构*/struct sockaddr{ sa_famil
2016-04-06 21:04:25
242
原创 DirectSound学习1
DirectSound介绍DirectSound封装了大量的音频处理PAPI函数,它可以提供快速的混音,硬件加速功能,并可以直接访问相关设备。允许用户最大效率地使用硬件,并拥有良好的兼容性。用DirectSound可以实现下列功能:播放WAV格式的声音文件或资源同时播放多路声音在硬件控制的缓冲区中指定声音播放的优先级在3D环境中设定某个声音的位置在声音中增加一些效果,如回声和齐声等,并且可
2016-03-26 19:38:18
772
原创 类基础
类类的定义和声明最简单地来说,类就是定义了一个新的类型和一个新的作用域。 - 类成员每个类可以没有成员,也可以定义多个成员,成员可以是数据,函数或类型别名。一个类可以包含公有的,私有的和受保护的部分。构造函数创建一个类类型的对象时,编译器会自动地使用一个构造函数来初始化改对象。构造函数是一个特殊的,与类同名的成员函数,用于给每个数据成员设置适当的初始值。成员函数在类内部,声明成员函数是必需的,而
2016-03-01 17:26:08
412
翻译 linux编程笔记(1)-内存管理介绍
内存管理主要分为以下几个层次:硬件层次:内存结构管理内核层次:内存映射/堆扩展语言层次:c(malloc)/c++(new)c语言用malloc依次申请4个字节空间的代码:#include<stdio.h>#include<stdlib.h>int main(){ int *p1 = malloc(4); int *p2 = malloc(4); int *p3
2016-02-29 19:51:43
316
翻译 linux shell(1)
1. 数学运算用let,(()),和[]进行基本算数操作,高级操作可以expr和bc这两个工具。1.1 let使用 可以用普通变量赋值方法定义数值,变量存储的是字符串,使用**let**可以使其能像数字一样处理。使用let时,变量名前不需要加$符号。 num1=4 num2=5 let result=num1+num2
2016-02-29 14:04:24
234
翻译 git使用
git的使用1. 创建版本库mkdir leargit //创建一个空目录git init //把learngit目录变为git可管理的仓库把文件添加到版本库git add readme.txt //把readme.txt文件添加到仓库git commit -m "write a readme file" //-m 后面是本次提交
2016-02-27 20:16:13
219
原创 线程创建
线程概念典型的unix进程可以看成只有一个控制线程:一个进程只能做一件事。加入多线程后,一个进程能够做不止一件事,每个线程处理各自的独立任务。多线程的好处是:通过为每件事件类型分配单独的处理线程,可以简化处理异步事件的代码。多个进程必须使用系统提供的复杂机制才能实现内存和文件描述符的共享,而多个线程自动地可以访问相同的存储地址空间和文件描述符。有些问题可以分解从而提高整个系统的吞吐量。交互的
2015-11-23 22:02:41
283
原创 文件属性与权限的更改
文件属性与权限的更改1.改变所属用户组chgrp:改变所属用户组 注:要改变的组名必须在/etc/group文件内才行,否则出错 chgrp [-R] 组名 目录名或文件名 -R:进行递归的持续更改,即连同子目录下的文件、目录2.改变文件所有者chown [-R] 账号名称 文件或目录 注:要更改的用户名必须是在/etc/passwd/文件中有记录cp命令复制一个文件时会复制文件的属
2015-11-18 23:54:42
638
原创 linux文件权限
1.linux文件权限与目录配置文件权限linux下文件权限分为用户,用户组和其他人3种类别进行管理,root可以访问任何系统中存在的文件。默认情况下,系统上的所有账号和一般用户身份,以及root的相关信息都是记录在/etc/passwd这个文件内,个人密码则是记录在/etc/shadow这个文件下,linux所有的组名都是记录在/etc/group内。下面是/etc/passwd文件的内容:
2015-11-18 22:00:29
371
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人