![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c语言
文章平均质量分 65
Mi ronin
正在努力学习的小白
展开
-
计算机网络 TCP/UDP程序开发网络聊天室
开发TCP/UDP协议应用程序,掌握网络应用程序的工作原理。通过该实验,深入理解UDP和TCP协议的异同点,了解网络协议的工作过程,学会网络通信编程的基本方法,能够编制网络应用程序。原创 2023-03-17 15:58:14 · 2801 阅读 · 0 评论 -
指针函数与函数指针
对于指针函数与函数指针大家可能会有一些混淆,这里就和大家浅谈一下对着二者的理解。一.指针函数定义声明格式解释说明举例说明二.函数指针定义声明格式解释说明举例说明注意为什么使用函数指针?原创 2022-10-06 13:49:10 · 192 阅读 · 0 评论 -
C语言 结构体struct总结
一.前言C语言提供了一些由系统提供好的数据类型,如:int,float,char等,用户可以在程序中用他们定义变量,解决一般的问题,但是在实际问题中只有这些数据类型是不够的,有时候我们需要其中的几种一起来修饰某个变量,在此情况下,使用简单的基本数据类型甚至是数组都是很困难的;我们就需要自己建立一些数据类型,并用它来定义变量。二.结构体的引入1.结构体的定义:由不同类型数据组成的组合型的数据结构称为结构体。2.结构体的优点:结构体不仅可以记录不同类型的数据,而且使得数据结构是“高内聚,低耦.原创 2021-12-25 22:09:38 · 2540 阅读 · 2 评论 -
C语言 用malloc开辟二维数组
用malloc可以开辟空间 对于二维数组来说 我们开辟的话同样也可以用malloc来开辟1.利用指针数组int main(){ int **p=(int **)malloc(3 * sizeof(int*));//竖的格子申请好了 for (int i = 0; i < 3; i++) //右面格子为int { p[i] = (int*)malloc(4 * sizeof(int)); } for (int i = 0; i < 3; i++) { for (in原创 2021-11-26 08:52:53 · 6283 阅读 · 4 评论 -
C语言 变量总结
一.前言学习C语言这么久,在这对变量和内存总结一下 。二.变量局部变量:定义在函数内部的变量,包括形参。全局变量:定义在函数外的变量,尽量少使用,很危险。static:静态关键字.可以用来修饰全局变量,局部变量(不能修饰形参)和函数。正因为有这个关键词我们把变量又可以分为:静态变量和普通变量。三.内存区域C语言的内存区域主要有以下几种:代码段:存放程序的代码;全局(静态)变量区:存放全局变量和静态变量栈:存放局部变量,系统自行管理该内存, 内存区域小,Wi.原创 2021-11-25 15:13:59 · 1163 阅读 · 1 评论 -
C语言 动态内存分配
一.前言C语言中存在几种内存分配方式,这里进行简单的归纳总结。(着重对动态内存进行讲解)二.三种主要内存分配方式从静态存储区域分配.在栈上创建.从堆上分配(动态内存分配).三.三种主要内存分配方式的特点从静态存储区域分配:内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量、static变量.静态开辟内存:所开辟的内存是在栈中开辟的固定大小的 ,如a是4字节 ,数组b是40字节 ,并且数组在申明时必须指定其长度 , 如果是全局数组的话,内存是在.原创 2021-11-22 11:58:42 · 1388 阅读 · 0 评论 -
C语言 函数指针
C语言原创 2021-11-19 23:17:19 · 1172 阅读 · 0 评论 -
C语言 类型转换
C语言类型转换一般是为了解决如下的一些问题:算术运算中或者逻辑判断表达式中操作室,不匹配的时候。赋值时,如果左右操作数类型不匹配。函数传递进去的实参和匹配的形参对应不上。函数返回的表达式的类型和函数返回类型不匹配。出现上述问题我们一般会进行相应的类型转换否则编程在调试的时候会出现警告甚至报错。C语言中类型转换主要分为两种:1. 隐式类型转换2. 显示类型转换隐式类型转换:编译器自动将左右操作数变成相同类型去计算。显式类型转换:程序开发者主观上去将类型强制转换。在类型转换原创 2021-11-13 15:38:40 · 8104 阅读 · 0 评论 -
C语言 两种简单的比较方法(冒泡法和比较法)
C语言冒泡法原理:从前向后两两比较,如果前面大于后面,则交换 每一次交换确定一个值。因为最大的值在最后因此也称为沉石法。代码如下:void BubbleSort(int* arr, int len){ for (int i = 0; i < len - 1; i++) //控制层数 { for (int j = 0; j < len - 1 - i; j++) //控制次数 { if (arr[j] > arr[j + 1]) { int t原创 2021-11-04 23:42:40 · 2296 阅读 · 0 评论 -
C语言 字符串常用函数实现(字符串的拷贝 求字符串的长度 字符串的连接 字符串的比较 字符串前n项的比较)
C语言字符串常用一些函数的实现1.字符串的拷贝https://blog.csdn.net/weixin_56935264/article/details/121065407(上面这篇文章写过字符串的拷贝,此处就不详细写了)2.求字符串的长度int My_strlen(const char* str){ int count = 0; while (str[count] != '\0') { count++; } return count;}3.字符串的连接char* My_原创 2021-11-03 14:32:52 · 589 阅读 · 0 评论 -
C语言 字符串拷贝
C语言 字符串拷贝 2020.10.31字符串的拷贝有几种写法代码:1.简单数组式写法#include<stdio.h>void My_strcpy1(char crr[],char arr[]){ int i; for (i = 0; arr[i] != '\0'; i++) { crr[i] = arr[i]; } crr[i] = '\0';}2.指针位移加解引用型void My_strcpy2(char drr[], char arr[]){原创 2021-10-31 16:34:48 · 4144 阅读 · 0 评论 -
C语言 指针的初识
C语言引出问题:1.指针是什么?2.指针怎么定义?怎么初始化?3.指针怎么应用?指针:等同于地址数据类型 *变量名(指针名)*号:定义指针的时候,是类型说明符(说明后面紧跟变量为指针变量)。&号:取地址符(获取变量的地址)。...原创 2021-10-27 20:48:57 · 329 阅读 · 0 评论 -
C语言 数组相关知识点
数组 2021.10.221:数组的定义(1).数组类型 + 数组名 + [长度];int arr[10]; //定义数组的类型为整型,数组名为arr,长度为10。(2).数组定义时不给长度,编译器会通过赋的值推算长度是多少。(3).数组名相关问题:①数组名还可以表示数组首元素的地址;int main() { int arr[9] = { 1,2,3,4,5,6,7,8,9 }; printf("%d %d\n", &arr, &arr[0]);}运行结果:原创 2021-10-22 23:36:41 · 1347 阅读 · 1 评论 -
C语言(初用函数)
c语言:函数的运用一:前言因为在c语言中,只允许有一个main函数,所以当我们每次写新的题,需要屏蔽之前的函数,所以函数的使用就可以解决这个问题。二:知识点1.函数的组成部分:返回值,函数名,参数列表,代码体。2.函数的一般形式表现:返回值 函数名 (参数列表){代码体}3.调用:函数名+(参数) 可以直接调用。4.参数列表替代了scanf_s这个函数,所以我们不去使用scanf_s。5.函数中不要使用printf 而是通过返回值返回。三:例题1.比较两个数的最大值,并且把最大值原创 2021-10-18 18:38:31 · 359 阅读 · 0 评论