linux
文章平均质量分 73
三只小熊66
本人只弄技术
展开
-
linux学习第一天
基础的命令命令解析器shell -- unix操作系统bash -- Linux操作系统本质: 根据命令的名字, 调用对应的可执行程序Linux快捷键1.命令补齐和路劲补齐都是用的tab这个按键2.ctrl+p,ctrl+n 一个是向上查找命令,一个是向下查找命令(当然这个是在历史记录当中)3.光标移动位置:向左ctrl+原创 2016-12-17 22:31:38 · 243 阅读 · 0 评论 -
unix 高级编程学习 --进程
进程进程创建函数#include fork()函数记住条件1.创建返回0,则是当前子进程。2.创建返回大于0,则是父进程。3.如果创建出错则是-1.简单代码例子#include#include#includeint main(void){ pid_t pid = 0; pid = fork(); if(pid<0) { prin原创 2017-10-05 16:53:16 · 184 阅读 · 0 评论 -
网路学习第三天
问题经过头两天的学习,我们已经把客户端和服务器的基本框架已经构建起来,说起来网络编程的最基本的框架已经给各位搭建起来,然后我发现当我启动更多的客户端的时候,不能正常的操作(ps不能正常的得到反映)然后我用命令查看netstat -na | grep 端口号我发现客户端和服务器都是链接状态,我就郁闷了,于是我想起来前段时间做阻塞服务器的时候遇到的一个问题,那就是我一旦监听了websocket,然原创 2017-08-23 22:26:51 · 178 阅读 · 0 评论 -
socket 服务器关闭以后之地址复用
1.问题的出现这个问题是当我在关掉服务器的时候,没有关掉客户端的时候出现了,于是我去查找原因后来发现说可以用地址复用解决,在我看来地址复用就是修改tcp服务器的状态而设定,这只是我的猜测。2.解决方案setsockopt这个函数,它有四个参数,详细的请查看api说明3.代码实现#include#include#include#include#include#inc原创 2017-08-20 22:39:04 · 582 阅读 · 0 评论 -
socket编程api学习二客户端的编程
代码#include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(){ int sockfd = 0; sockfd = socket原创 2017-08-20 18:48:45 · 319 阅读 · 0 评论 -
socket API 学习一
linux快速学习api方式在linux操作系统中如果你知道函数的名字可以通过man 函数去寻找,比如我们要学习的socket 的基础api,socket函数,bind函数等都可以通过man函数直接找到。比如socket函数然后我们根据以前学习c的方式把函数直接复制过来进行打桩,打完桩了以后我们根据实际情况进行参数的填写,三个参数的意思我们在前面都已经详细的讲过了,这样我们只需要直原创 2017-08-13 16:11:11 · 346 阅读 · 0 评论 -
LINUX编程学习路线
建议学习路径: 首先先学学编辑器,vim, emacs什么的都行。然后学make file文件,只要知道一点就行,这样就可以准备编程序了。 然后看看《C程序设计语言》K&R,这样呢,基本上就可以进行一般的编程了,顺便找本数据结构的书来看。 如果想学习UNIX/LINUX的编程,《APUE》绝对经典的教材,加深一下功底,学习《UNP》的第二卷。这样基本上系统方面转载 2017-08-05 17:01:48 · 755 阅读 · 0 评论 -
UNIX网络编程-tcp套接字编程一
UNIX网络编程-TCP套接字编程socket函数函数基本#include int socket(int family,int type,int protocol);family参数致命协议,该参数也往往被称为协议域。type参数指明套接字类型,它是一个常量数值,protocol参数摸个类型常量,或者是0.socket函数在成功时返回一个小的非负整数值,它与文件原创 2017-08-12 15:59:53 · 288 阅读 · 1 评论 -
Kbengine游戏服务器搭建
这个服务器据说是bigword中文版,在这个群里认识了很多的C/C++的大牛,于是决定使用一下,刚好这个上面有现在最流行的几个游戏的框架的demo,u3d,cocos2d-x,js,还有一个3d的引擎没有听说过,但是自己想学习的u3d和js这两个都可以直接有demo这样我就直接开始搭建服务器和客户端,客户端的程序只要插件和u3d的源码就可以进行运行,客户端和服务器源码都在https://githu原创 2017-01-07 09:30:02 · 1570 阅读 · 0 评论 -
linux下面的静态库和动态库的创建
linux下创建静态库和动态库普及知识1.静态库的好处由于我们做技术的价值就是核心的代码编写,所以我们一般后期都会把文件用静态库或者动态库的形式封装起来,这样我们只用给头文件和库文件这样就够了。这使我们的源码得到了一定程度上的保护。2.windows和linux的库文件windows上面由于vs的强大很多的功能都可以在上面直接点击或者配置一些信息就可以生成,原创 2016-12-17 23:58:37 · 370 阅读 · 0 评论 -
使用makefile进行代码的管理
makefilemakefile的作用它在我看来的主要作用就是帮助我们管理好已经写好的代码,如果只有一到两个的.c或者是.h文件我们用gcc的命令就还好,如果像上次做一个简单的加减乘除的一个小功能我们发现gcc的命令就会变的很长,或者说要记住的东西就比较多,所以我们在linux下面用makefile进行管理代码很方便,而且还不容易出错这是我们要学习的一个重点内容,当然我也是才学习,照方抓药原创 2016-12-18 18:58:53 · 481 阅读 · 0 评论 -
gdb调试代码
gdb纲要题外话:当我第一次看到这个名字的时候我以为我看错了哈哈,gdb我还以为是gdp了,我是一个马刺的死忠,不撤了马上进入正题,由于linux下调试代码每次都截图比较麻烦,我就不截图把主要的命令都写下来,这些就是在调试代码中常用的命令,能力有限有错误的地方希望有朋友看到给一个提示一起讨论。0.前奏首先我们要把我们的代码用gcc 编译成.o文件,当然编译的时候我们还不要忘记有一个关键原创 2016-12-18 14:48:39 · 387 阅读 · 0 评论 -
进程间通信-pipe函数
#include #include #include int main(void){ int fd[2];//数组 pid_t pid; int ret = pipe(fd);//使用pipe if(ret < 0) { perror("pipe error\n"); exit(0); } pid = fork(); if(pid<0) { perror("原创 2017-10-06 13:53:24 · 284 阅读 · 0 评论