自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 linux下c语言共享内存调用

共享内存作用: 让同一块物理内存被映射到进程A、B各自的进程地址空间。进程A可以即时看到进程B对共享内存中数据的更新 共享内存使用步骤:(这里还有要通过ftok()函数获得键值,所以还有打开文件的操作) 1.进程调用shmget函数创建新的或获取已有共享内存 2.进程调用shmat函数,将物理内存映射到自己的进程空间 3.shmdt函数,取消映射 4.调用shmctl函数释...

2019-06-18 14:40:42 6825

原创 strcat()函数的用法

这几天的一次程序练习中用到了strcat()函数,但也想到了一些问题。 我们都知道strcat(str,ptr)是将字符串ptr内容连接到字符串str后,然后得到一个组合后的字符串str,比如 str字符串内容为"123456\0",ptr字符串为"abc\0",那么strcat(str,ptr)后str内容为"123456abc\0",输出结果为 1234...

2019-05-13 13:42:50 159723 15

原创 取十个1-100的随机整数,然后倒序打印出来。(通过指针,而不是数组下标)

这题就是生成随机数和排序的问题,我用的是冒泡排序,代码如下,仅供参考 #include <stdio.h> #include <time.h> #include <stdlib.h> int random_100(void) { int a; srand((unsigned)time(NULL)); a = rand() % 100 + 1;//生...

2019-04-25 17:38:54 783

转载 方阵的主对角线之上称为“上三角”。 请你设计一个用于填充n阶方阵的上三角区域的程序。填充规则是:使用1,2,3...的自然数列,从左上角开始, 按照顺时针方向螺旋填充。

填充规则是:使用1,2,3...的自然数列,从左上角开始, 按照顺时针方向螺旋填充。 例如:当n=3时,输出: 1 2 3 6 4 5 当n=4时,输出: 1 2 3 4 9 10 5 8 6 7 当n=5时,输出: 1 2 3 4 5 12 13 14 6 11 15 7 10 8 9 这道题我开始不会写,也是在看了别人的讲解后才明白的,代码如下,仅供参考 #include <st...

2019-04-25 17:34:11 1832

原创 写一个函数,将字符串转换成带符号整型数据

我的思路是将字符串从后往前进行操作,也就是对应整数的个,十,百位这样,代码如下,经供参考 #include <stdio.h> #include <string.h> int main() { char str[128] = {0}; char c; signed int goal = 0; printf("printf a str:\n"); int...

2019-04-24 14:49:30 1273

原创 输入一行字符,分别统计出其中英文字母、空格、数字的个数。

本题就是简单的计数运算,if语句判断条件理解就好 #include <stdio.h> #include <string.h> int main() { char str[128] = {0}; char c; printf("input str:\n"); int i; i = 0; while((c = getchar()) != '\n')//输...

2019-04-24 14:46:49 1018

原创 将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。

这个代码思路挺简单的,但在实现时本人还是思考了好久,代码如下,仅供参考 #include <stdio.h> int main() { int m; printf("input one num:\n"); scanf("%d",&m); int temp = m; printf("result:%d =",m); while(temp != 1) {...

2019-04-23 20:06:07 2916

原创 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

寻找这个数的条件是两次判断,所以整体使用嵌套循环语句即可 #include <stdio.h> int main() { int i; int j; int k; for(i = 0; i < 1000; i++)//我们要判断的数 { for(j = 0; j < 1000; j++)//判断i+100是否是j的平方数 { if(i + 1...

2019-04-23 20:04:00 12125 5

原创 有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

#include <stdio.h> int main() { int a;//百位 int b;//十位 int c;//个位 for(a = 1; a <= 4; a++) { for(b = 1; b <= 4; b++) { if(b != a)//十位不与百位相同 { for(c = 1; c <= 4; c++)...

2019-04-23 20:01:35 319

原创 c语言中自己写实现strcat(),strcpy(),strcmp()的函数

c语言中的string.h头文件中虽然有这三个函数,但老师让我们自己写函数,所以添加了一点自己的想法写了这三个函数。 strcat: #include <stdio.h> void str_cat(char* p,char* q) { while((*p) != '\0')//指针p移动到front尾 { p++; } while((*q) != '\0')//将...

2019-04-17 10:54:20 2279 2

原创 linux下隐藏scanf输入内容

linux下不可使用conio.h库中的getch()函数来进行隐藏输入,但linux下有自带的命令隐藏写入,这个命令就是stty -echo, 在命令行输入该命令后就不再显示输入,相反的命令是stty echo,显示写入,写在代码中如下: char c[32]; system("stty -echo"); scanf("%s",c); system("stty echo"); ...

2019-04-08 17:06:00 936

原创 c语言动静态库

一,动静态库 1.什么是库文件? 用来保存函数和变量的仓库,只能使用库文件里的函数或者变量,但无法看到是如何实现的。 例如:printf,scanf,strcpy这些都是库函数,也就是保存在库文件里的函数 2.linux库文件:静态库.a 和动态库.so 3.linux库文件的存放位置: /lib:系统启动和运行需要的库 /usr/lib:应用程序启动或者运行需要加载的库 ...

2019-04-08 00:13:11 416

原创 完全基于数学的杨辉三角形

众所周知,杨辉三角形用数组做会非常简单,但毕竟杨辉三角形的原理以及公式我们高中就学过了 ,代码如下: #include <stdio.h> #include <stdlib.h> int factory(int n,int j) { if (n < j) { printf("input error!\n"); exit(1); } if(j =...

2019-03-31 22:59:58 156

原创 c与指针读书笔记(20190325-27)

第一章节 在c语言中,数组参数是以引用(reference)形式进行传递的,也就是地址调用,而标量和常量是按值(value)传递的。 字符串由双引号括起来,每个字符串都由NLI(类似符号\0)做结尾,故"hello"占6个字节。 printf格式与含义: %d 十进制整数 %o 八进制 %x 十六进制 %g 一个浮点值 %c 一个字符 %s 一个字符串 sca...

2019-03-27 20:22:44 165

原创 新手最先接触的linux指令(20190326小结)

1.cd / 进入目录 cd ~进入home目录 cd ..进入上一层目录 2.pwd 查看当前目录路径 3.mkdir 创建目录 mkdir -p /mnt/hs/s 在mnt目录下创建路径为hs/s的目录,若不存在,则创建 4.rm -i 删除文件并且要确认 rm -f 直接删除文件或目录,不需确认 5.mv (-i)a b 将文件a重命名为b mv a /b 将文件移动到b目录下 m...

2019-03-26 23:46:19 155

原创 嵌入式开发概述(20190325小结)

一.嵌入式开发概述: 嵌入式:在已有硬件上移植操作系统,解决软硬件耦合度高导致的问题。(打个比方:软件的实现是为了调用open()函数,那么嵌入式开发就是在操作系统中实现open()函数对硬件的调用) 移植:为满足硬件要求修改内核源码 嵌入式开发和单片机开发的区别:是否移植操作系统。 没有操作系统的产品就不是嵌入式产品; 传统开发(单片机/裸机开发)缺点: 1.软件移植性差;(软件直接控制硬件...

2019-03-25 23:50:59 274

原创 linux下vim的基本操作(20190324小结)

c语言特点: 1.出色的可移植性,能在多种不同体系结构的软硬件平台上运行; 2.有简洁紧凑,使用灵活的语法机制,能直接访问硬件; 3.有很高的运行效率。 vim 三种基本模式: 命令行模式:控制光标移动,进行删除与复制行的操作,进入插入模式或底行模式。 插入模式:进行代码编辑。 底行模式:将文件保存或退出vim,也可以设置编辑环境,如寻找字符串,列出行号等,底行模式也算命令行模式。 命令行...

2019-03-24 22:49:13 287

原创 20190323学习小结

今天在通讯录中加入了用户身份验证以及注册功能 客户端client代码: 界面程序usr_menu(): void usr_menu() { system("clear"); printf("\t\t----1.用户登录----\n"); printf("\t\t----2.用户注册----\n"); printf("\t\t----3.退出登录----\n"); print...

2019-03-23 20:03:05 164

原创 基于c语言链表的通讯录

本人使用makefile文件,所以总代码分为四部分 tele.h: #ifndef TELE_H #define TELE_H #include<stdio.h> #include<stdlib.h> #include<string.h> struct node { char name[12];//姓名 char sex[10];//性别 i...

2019-03-23 18:50:54 767

空空如也

空空如也

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

TA关注的人

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