![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言笔记
深海章鱼
这个作者很懒,什么都没留下…
展开
-
全效修复
sfc /scannow原创 2020-02-05 21:42:00 · 1073 阅读 · 0 评论 -
ARM基础(2) ARM指令
在进行寄存器赋值操作的时候,搬移指令操作的时候我们对普通寄存器,我们可以用mov指令, 那么有些比较特殊的寄存器,比如CPSR, 操作的时候就不能用mov指令, 需要用特殊指令 mrs读 和 msr写,在汇编里面把变量是通过寄存器,编译器自动分配一个寄存器来去代替的 。汇编里面的指令都可以加上一些条件判断, 后面加不同字符就 可以, 都是根据前面一条比较的结果大于小于等于可以做条件判断...原创 2019-11-18 21:55:25 · 757 阅读 · 0 评论 -
C语言笔记(24)System V IPC对象(上)
unix的官方版本中引入的一种,一大类进程间通信机制(系统5)IPC 主要包括3类 ,共享内存 消息队列 信号灯集IPC对象, linux中也都实现了, 也都可以用于我们进程间的通信每个IPC对象有一个唯一的ID号 , 这个ID是一个数字, 就跟进程号类似,每一个进程都有一个唯一的pid无论是共享内存 ,消息队列, 还是信号灯集, 都有一个于他对应的ID. 这个ID非常重要,...原创 2019-09-04 17:05:00 · 335 阅读 · 0 评论 -
C语言笔记(23)Linux进程间通信介绍
进程间通信介绍早期UNIX进程间通信方式(从Unix继承过来的进程间通信机制)无名管道(pipe)有名管道(fifo)信号(signal)System V IPC (IPC进程间通信的缩写)又引入了三种通信机制 (Linux同样继承了过来)共享内存(share memory)消息队列(message queue)信号灯集(semaphore set)套接字(socket)...原创 2019-08-27 22:03:25 · 232 阅读 · 0 评论 -
C语言笔记(22)Linux线程编程
多任务程序的机制 线程线程的概念:线程跟进程的关系非常密切, 进程是系统为了执行一个程序而分配资源的总称,每个进程创建的时候, 我们的操作系统会给它分配相应的资源, 包括 内存资源,cpu资源, 有独立的地址空间, 有代码, 有数据 .每个进程互相不影响 , 只能访问自己的地址空间中的代码和数据 , 每个进程的话 除了存放代码和数据之外 , 还有系统数据 , 对于linux系统来说 , ...原创 2019-08-20 17:26:53 · 135 阅读 · 0 评论 -
Linux下C编程中printf不加'\n'不输出
调试linux下的socket程序时,发现服务器端收到的信息只有在客户端结束后才会显示收到的信息,但是如果在printf中加入换行符,就会立刻输出。原因是因为Unix系统一般有行缓存。而’\n’可视为行刷新标志。只要把printf(“1”);改成printf(”1\n”);下面情况下会刷新缓存:1 强制刷新标准输出缓存fflush(stdout);2 放到缓冲区的内容中包含/n;3 缓...转载 2019-08-19 15:16:37 · 951 阅读 · 0 评论 -
C语言枚举学习
在实际编程中,有些数据的取值往往是有限的,只能是非常少量的整数,并且最好为每个值都取一个名字,以方便在后续代码中使用,比如一个星期只有七天,一年只有十二个月,一个班每周有六门课程等。以每周七天为例,我们可以使用#define命令来给每天指定一个名字:#include <stdio.h>#define Mon 1#define Tues 2#define Wed 3#defi...原创 2019-07-31 09:50:09 · 105 阅读 · 0 评论 -
C语言笔记(19)Linux下文件IO(下)
这里需要 好好研究一下st_mode换算的公式原创 2019-07-22 11:09:36 · 125 阅读 · 0 评论 -
C语言笔记(21)Linux进程编程及守护进程
多进程 , 多线程 是编写一个多任务程序的相关的机制.什么是多任务程序呢 ?一个程序能够同时做多件事情. 比如说:QQ 登录以后同时和多个人聊天还可以上传下载,听音乐 就是多任务.程序是存放在磁盘上的,那么我们的CPU实际上是不能直接去访问磁盘,要执行一个程序首先是要把程序中的内容,指令和数据.都加载到内存中这样我CPU才能去执行指令,去访问数据所以要执行一个程序,就要为它分配内存,除了内...原创 2019-07-25 16:57:12 · 839 阅读 · 0 评论 -
C语言笔记(25)System V IPC对象(下)
System V IPC - 信号灯信号灯又叫信号量 , 用于不同的任务 , 可以使进程之间也可以使线程之间用来实现同步或者是互斥的一种机制, 进程或线程之间用来同步或互斥的机制Linux里面支持信号灯的种类 ,主要有三类 :1.Posix 无名信号灯 . 无名信号量 ,主要是用于线程, 一个进程内部线程之间的同步 当然也可以用来互斥 ,这是无名信号灯 .2. Posix 有名信...原创 2019-09-09 14:18:34 · 292 阅读 · 0 评论 -
Linux top命令的用法详细详解
Linux top命令的用法详细详解首先介绍top中一些字段的含义:VIRT:virtual memory usage 虚拟内存1、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据等2、假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量RES:resident memory usage 常驻内存1、进程当前使用的内存大小,但不包括swap...转载 2019-09-11 11:20:20 · 119 阅读 · 0 评论 -
C语言笔记(31)单词查询
从客户端入手, 首先创建网络套接字, 连接服务器, 定义信息结构体,客户端 服务器两边保持一致,原创 2019-09-30 15:52:43 · 173 阅读 · 0 评论 -
通过XShell远程连接Ubuntu
一般情况下,安装好的Ubuntu系统中默认是只安装了openssh-client,此时只能通过此系统连接访问其他系统,但不具有让其他系统访问的权限。在终端查看ssh进程,输入ps -e|grep ssh,如果有安装openssh-client只会出现ssh -agent,不会出现sshd(因为博主已经安装openssh-server,所以会出现sshd)。此时要想开放本机SSH服务以便其他系统...转载 2019-09-27 15:21:50 · 280 阅读 · 0 评论 -
Windows和Ubuntu系统之间文件相互复制粘贴
在安装Ubuntu系统后发现与Windows系统的文件不能相互复制,网上查了很多教程,发现都是不能用的,能实现的方法如下所示:第一步: sudo apt-get autoremove open-vm-tools第二步:sudo apt-get install open-vm-tools-desktop然后重启————————————————版权声明:本文为CSDN博主「谁谁的博客」的原创...转载 2019-09-25 14:35:48 · 1253 阅读 · 2 评论 -
C语言笔记(30)SQLite数据库
SQLite 有两种方式第一种是在Ubuntu下使用命令行的方式来学习第二种是在C语言编程来学习. C语言编程接口数据库基本概念数据(Data)能够输入计算机并能被计算机程序识别和处理的信息集合.不要狭义的认为 1234这些数字才是数据, 像英文单词hello只要能够被计算机识别的二进制 都统称为数据 . 数据库(Database)数据库是在数据库管理系统 管理和控制之下, 存放...原创 2019-09-25 12:26:59 · 382 阅读 · 0 评论 -
C语言笔记(29)网络编程-UDP 编程
UDP 编程原创 2019-09-22 22:26:56 · 548 阅读 · 0 评论 -
Linux下undefined reference to ‘pthread_create’问题解决
在试用Linux 线程模块时,试用pthread_create 函数。编译命令为 gcc main.c -o test时,会出现如下错误/tmp/ccIvH3bU.o: In function `main':main.c:(.text+0x81): undefined reference to `pthread_create'collect2: error: ld returned 1 e...转载 2019-09-21 01:11:52 · 216 阅读 · 0 评论 -
C语言笔记(28)网络编程-TCP编程并发服务器
TCP编程并发服务器原创 2019-09-18 08:35:47 · 456 阅读 · 0 评论 -
C语言笔记(27)网络编程-TCP编程
CS模式有个服务器, 有个客户端, 会经过一些函数原创 2019-09-12 17:14:23 · 319 阅读 · 0 评论 -
C语言笔记(20)Linux下文件IO(库的制作)
因为使用的是静态库, 我们写的hello函数的代码已经复制到我们的程序 所以程序执行的时候不再需要库, 我们把库删除, 再执行我们的程序也是没有问题的...原创 2019-07-24 16:09:44 · 131 阅读 · 0 评论 -
C语言笔记(18)Linux下文件IO(上)
我们在linux C下面进行IO操作的话, 第一种方式就是通过标准IO来实现这个标准就是C的标准,在C标准不仅定义了语法和关键字,还定义了库需要提供一系列的函数,标准IO实际上就是C库中定义好的一些用于输入和输出的组函数,称为标准IO, 通过这些函数能够很方便的输入输出.既然标准IO是由C库来实现的,那么显然只要有C库那么我们就可以使用标准IO,我们在运行一个程序的时候,有两种不同的方法...原创 2019-07-16 17:28:33 · 203 阅读 · 0 评论 -
C语言笔记(14)数据结构-队列的实现及应用
相当于排队买票,公平公正 , ,只允许在表尾插入数据, 只允许在表头删除数据,而栈 是只允许在一头插入和删除数据原创 2019-07-06 21:35:58 · 947 阅读 · 0 评论 -
C语言笔记(8)C语言高级编程
结构体的嵌套原创 2019-06-28 13:43:13 · 232 阅读 · 0 评论 -
C语言笔记(7)shell编程
编译型语言 : 例如:C语言, 只有写完代码后通过编译器进行编译,没有错误以后才能够,生成执行文件, 如果你有错误是不能生成执行文件,的 得先编译后执行. 编译语言用到了编译器, 不同的编译器生成的执行文件是不一样的.例如 :我用gcc生成的文件运行在 x86的机器上, 如果我换成arm - gcc这个时候我所生成的执行文件只能在arm gcc上运行, 编译语言会受到编译器的限制解释型...原创 2019-06-28 13:43:26 · 131 阅读 · 0 评论 -
C语言笔记(6)网络配置基础
局域网内的ip地址 , 和外网的ip地址原创 2019-05-16 11:11:18 · 251 阅读 · 0 评论 -
C语言笔记(26)网络编程基础
局域网内的ip地址 , 和外网的ip地址原创 2019-06-28 13:45:32 · 257 阅读 · 0 评论 -
C语言笔记(5)软件包管理及Shell命令
GPL 保护自由软件的条款 , 并不是代表免费, 就是可以得购买得到之后可以得到源码原创 2019-06-28 13:45:20 · 239 阅读 · 0 评论 -
C语言笔记(4)-函数
函数原创 2019-06-28 13:43:58 · 111 阅读 · 0 评论 -
C语言笔记(3)-指针
以字节为单位给内存做了统一的编号 ,这个编号就是地址 , 在内存当中不管你有没有存数据,它的编号从0到最大内存单元 已经编好了 , 最小单位是一个字节 ,内存以字节为单位内存是以字节为单位开始编号, C语言当中 内存的地址我们称为指针, 内存单位地址,编号就是指针pointerauto int *p指针是存地址的 .int a = 20 ;int *p = &...原创 2019-06-28 13:44:11 · 222 阅读 · 0 评论 -
C语言笔记(2)
在控制行 输入 gg=G 意思是格式化代码, 调整格式原创 2019-06-28 13:44:25 · 135 阅读 · 0 评论 -
C语言笔记(9)工程管理工具Makefile
Makefile只编译更新过的文件 , 减少编译的工作量, 用了make后会在你的目录当中生成非常多的中间文件,一些目标文件…一些库等等, 有时候我们需要对工程做一个清理,往往是我们需要通过make一些的相关命令来清理,而不是通过rm命令一个一个的去删除,...原创 2019-06-28 13:42:59 · 150 阅读 · 0 评论 -
运行shell脚本的三种方式
先来看一个简单的shell脚本:#!/bin/shcd /tmpecho “hello,world!”我们来挨个解释一下脚本的每一行:第一行:#!后面跟的是解释器的路径(shell本身就是一种解释型语言),解释器的路径是/bin/sh;第二行:cd命令是切换当前工作目录的命令,tep是linux下根目录的一个子目录;第三行:echo命令是输出后面所跟的参数三种执行方法:第一种:因...转载 2019-06-28 13:43:38 · 230 阅读 · 0 评论 -
C语言笔记(16)数据结构-查找
一般顺序表的第0个位置不放数据 ,作为监视哨 , 要把查找的key放到监视哨里面从后往前查找, 如果查找到, 把对应索引返回, 如果没有查找到 , 我们的key因为是查找本体值, 所以一定能查找到, 当查找从最后到1为止没有查找到时, 那么key肯定相等肯定能查找到,返回索引0 所以如果返回是0表示查找失败, 非0表示成功顺序查找 :从前到后 , 或者从后到前按着顺序一个 一个去查找,...原创 2019-06-28 13:42:48 · 110 阅读 · 0 评论 -
C语言笔记(15)数据结构-树与二叉树
原创 2019-07-11 11:51:32 · 129 阅读 · 0 评论 -
C语言笔记(12)数据结构-循环链表
双向循环链表的插入双向循环链表的删除原创 2019-06-28 16:15:13 · 111 阅读 · 0 评论 -
C语言Makefile笔记总结
Makefile 工程管理器, 顾名思义,是指管理较多的文件Make工程管理器也就是个"自动编译管理器",这里的"自动"是指能够根据文件时间戳自动发现更新过的文件而减少编译的工作量,同时,它通过读入Makefile文件的内容来执行大量的编译工作Make将只编译改动的代码文件,而不用完全编译.如果.c文件特别多第一次编译时间会特别长,在做项目时有时我们只改动某些文件,如果再重新编译工程会耗费...原创 2019-06-24 17:33:09 · 365 阅读 · 0 评论 -
C语言笔记(13)数据结构-栈及实现
栈的定义 和 顺序栈原创 2019-07-02 17:31:07 · 124 阅读 · 0 评论 -
linux终端vi同时显示多个文件的分屏操作及切换操作
以前看到那边分屏操作的觉得很高端,现在初步整理了一下。这里不是那个用代码实现的分屏,完全属于linux的操作命令一、打开并显示文件1.打开这个不用说了,就是vi xx.c,或者vi xx1.c xx2.c如果vi已经打开,则在底行模式输入 :open xx.c2.显示终端底行模式输入 :split 垂直分屏 :vsplit 水平分屏(没输入...转载 2019-06-22 15:28:44 · 5012 阅读 · 0 评论 -
C语言笔记(11)数据结构-单链表
单链表的创建一种是创建空链表, 然后往空链表当中加入,各种各样的节点另一种的是在创建的时候,就已经 有初始化的值第一种如何创建空链表...原创 2019-06-28 13:42:05 · 102 阅读 · 0 评论 -
C语言笔记(17)数据结构-排序
原创 2019-06-28 13:42:29 · 80 阅读 · 0 评论