自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 Linux进程间通信--共享内存

共享内存区是最快的IPC形式。一旦这样的内存映射到共享它的进程的地址空间,这些进程间数据传递不再涉及到内核,换句话说是进程不再通过执行进入内核的系统调用来传递彼此的数据。共享内存的数据结构共享内存相关函数int shmget(key_t key,size_t size,int shmflg>;用来创建共享内存void *shmat(int shmid, const...

2018-04-01 11:05:49 237

原创 Linux进程间通信--消息队列

Linux进程间通信–消息队列消息队列提供了一种从一个进程向另一个进程发送数据块的方法。每个数据块都被认为是有一个类型,接收者进程接收的数据块可以有不同的类型值。消息队列与命名管道有一样的不足,就是每个消息的最大长度是有上限的(MSGMAX),每个消息队列的总的字节数(MSGMNB)、系统上消息队列的总数也都有上限(MSGMNI)。消息队列相关函数int msgget(k...

2018-04-01 09:33:50 268

原创 Linux进程间通信--管道

Linux进程间通信–管道管道是是Unix中最古老的进程间通信的形式。 我们把从一个进程连接到另一个进程的一个数据流称为一个“管道”。 管道分为匿名管道和命名管道。 - 匿名管道 匿名管道只能实现具有亲缘关系进程之间通信,而不能实现没有关系的两个本地进程之间的通信使用匿名管道的创建#include<unistd.h>int pipe(int fd[2]);下面...

2018-03-23 13:18:17 220

原创 Linux的命令改变文件属性及权限问题

Linux的命令改变文件属性及权限问题在学习如何改变文件属性及权限之前,有必要先了解一下一下文件的属性。在登录Linux之后,执行ls - al命令,会看到以下内容: 这里以其中一行的代码为例其中权限r为读权限,w为写权限,x为执行权限。 好了了解了这些,咱们接下来就可以学习如何修改文件属性和权限了。 首先给大家简单的介绍几个命令,分别是chgrp,chown和chmod...

2017-11-27 17:42:36 658

原创 Linux的命令

一、Linux命令1.ls语法:ls+选项+指定目录或文件功能:列出该目录下的所有子目录与文件。常用选项:-a:列出当前目录下所有文件(包括隐藏文件,以.开头的文件)-d:将目录文件像文件一样显示,而不是显示其下文件-i:输出文件的i结点索引信息-k:以k字节的形式表示文件的大小-l:列出文件的详细信息-n:用数字

2017-11-19 22:14:53 198

原创 c语言实现静态顺序表

seqlist.h#ifndef __SEQLIST_H__ #define __SEQLIST_H__ #include#include #include #define MAX 10 typedef int DataType;typedef struct SeqList{ DataType data[MAX]; int sz;}SeqList, *pSeqLi

2017-07-29 23:36:01 296

原创 解析C语言结构体

在实际的应用当中,我们可能遇到很多数据类型以及长度都是一样的,如果一条一条声明的话,会很麻烦,那有什么解决方法,可以解决这个问题呢?于是在C中引入了结构体。一、定义结构体类型在声明结构时,必须列出它包含的所有成员。这个列表包括每个成员的类型和名字。比如下面这个声明,创建了一个叫x的变量,它包含了三个成员,一个整数、一个字符和一个浮点数。Struct{ int a; char b

2017-07-16 12:13:32 457

原创 strcpy函数的实现

#include#include#includechar*my_strcpy(char*dest, const char*src){ char*ret = dest; assert(dest != NULL); assert(src != NULL); while (*(dest++) = *(src++)) { ; } return ret;}int main()

2017-04-23 09:55:22 377

原创 简单猜数字游戏

#include #include void menu(){ printf("***************************\n"); printf("******1.进入 0.退出 *****\n"); printf("***************************\n");}void play_game(){ int rand_num = rand(

2017-04-10 12:54:39 1196

原创 sizeof计算对象所占内存大小详解

sizeof并非为一个函数,而是C语言中的一个关键字, sizeof计算对象所占内存的大小,判断操作数的类型长度,以字节为单位;地址 的大小在32位系统占4个字节,在64位系统占8个字节,本实例都在32位机器上操作;数组名arr表示整个数组两种情况:sizeof(arr)以及 &arr。#include int main(){ //字符数组 char arr[] = "abcdef"

2017-04-09 07:47:33 1977

原创 c语言中两种常见代码编写错误,“写入位置 0x00000000 时发生访问冲突”和“语法错误 : 缺少“;”(在“{”的前面)”

编程工作者在编程的时候,由于编程不够细心经常出现这样或那样的错误。今天,我在这里说下我所遇到的错误。如下面这个代码就出现了文章标题中的俩个错误:#define _CRT_SECURE_NO_DEPRECATE#include#include#includeint is_prime(int m){ int i = 0; for (i = 2; i <= sqrt(m); i++)

2017-04-08 17:59:42 4686

原创 关于二分法查找

与一般的查找方式相比二分法查找则显得高效快速,即只要较少的查找次数就可以完成快速地搜索。在进行二分法查找前需要先对数据进行排序,定义left,right两个变量,然后在这组数据中找到mid=right+(left-right)/2,然后将待查找元素与mid所指元素进行比较,如果相等则返回,如果查找元素大于以mid所代表数字为下标的元素,则将left向右移动即left=mid+1;如果查找元素小于m

2017-04-08 08:15:20 785

原创 模拟登陆系统

#define _CRT_SECURE_NO_DEPRECATE#includeint main(){ int i = 0; char passwords[20] = { 0 }; for (i = 0; i < 3; i++) { printf("请输入密码:>\n"); scanf("%s", passwords); if (strcmp(passwords, "12

2017-04-05 07:10:40 286

原创 goto语句的用法及缺陷

由于goto语句可以不受限制的灵活跳转,使得其成为了有争议的语句。我个人观点是最好不用或是禁用。首先,由于goto语句可以灵活跳转会导致破坏结构化设计风格,若一段代码多次使用goto语句会降低代码的可读性。其次,goto语句的执行可能会跳过变量的初始化、重要的计算语句等,甚至影响到整个程序的运行。列如:goto state;String s1,s2;       //被go

2017-04-04 07:41:12 8611

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除