自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 动态内存管理

在之前的学习中,我们掌握的开辟空间的方式有int a;int arr[10];这种开辟空间的方式是固定的。像数组就得在申明时就指定大小,在遇到一些暂时不知道需要的空间大小时,就只能预先开辟很大的空间,造成浪费。这时,就要试试动态内存开辟了。mallocc语言提供了一个叫malloc的函数,这个函数可以向内存申请一块连续可用的空间,并返回这个空间的指针void* malloc (size_t size);1.如果开辟成功,则返回一个指向开辟好空间的指针。 2.如果开辟失

2022-03-04 16:49:36 89 1

原创 自定义类型

结构体结构体的声明struct student{ int age;//年龄 char name[20];//名字 char id[20];//学号 char sex[5];//性别};结构体变量的定义和初始化struct student{ int age;//年龄 char name[20];//名字 char id[20];//学号 char sex[5];//性别}s1 = {10,"lisi","2000","nan"};int main()

2022-03-03 23:34:11 97

原创 字符函数和内存函数

字符函数strlensize_t strlen ( const char * str );从str的位置开始,往后寻找\0,返回中间相差的个数。注意:如果传入的字符串中没有包含\0,该函数得出的返回值便不再正确接下来给大家模拟一下strlen的函数实现size_t my_strlen(const char* str){ char* temp = str; while (*temp++ != '\0'); return temp - str - 1;}

2022-03-02 01:17:23 86

原创 C语言进阶之数据的存储(2)

上篇博客介绍了整形在内存的存储,本篇博客将继续介绍浮点数在内存中的存储是什么样的浮点型在内存中的存储首先我们先来看这样一个代码#include <stdio.h>int main(){ int n = 9; float* pFloat = (float*)&n; printf("n的值为:%d\n", n); printf("*pFloat的值为:%f\n", *pFloat); *pFloat = 9.0;

2022-03-01 00:35:00 91

原创 C语言进阶之数据的存储(1)

数据介绍char //字符数据类型short //短整型int //整形long //长整型long long //更长的整形float //单精度浮点数double //双精度浮点数struct //结构体类型enum //枚举类型union //结合体类型a[] //数组类型*p //指针类型void //空类型在学习c语言的过程中,可能会有同学产生这样的疑问:为什么会区分这么多类型呢?按照我的理解,可以分成以下三点:1.根据不同的类型开辟需要的空间.

2022-02-28 23:29:52 453

原创 指针进阶之详解指针

目录文章目录前言一、sizeof与strlen里的指针二、指针题目详解前言 指针作为c语言里的重要知识点与难点,令很多同学困扰。本篇博客将以另一种角度出发,带你更加理解指针,希望一些基础比较薄弱的同学能在本篇博客中有所收获。我们首先要明确,数组名代表的是首元素地址,但它有两个例外。1.当数组名单独出现在sizeof内部时,它代表的是整个数组的地址,此时sizeof求的的是整个数组的大小。2.与&相结合时,它代表的是整个数组的地...

2022-01-19 12:29:02 743 13

原创 C的基础知识(4)

关键字typedef顾名思义是类型定义,这里应该理解为类型重命名。#include<stdio.h>typedef unsigned int u_intint main(){ unsigned int a = 10; u_int b = 20; printf("%d %d",a,b); return 0;}a和b的类型是一致的,此时unsigned int和u_int都能使用static在C语言中: static是用来修饰变量和函

2021-10-25 20:16:54 906

原创 C的基础知识(3)

函数为了避免主函数内部代码冗杂,通常会将部分功能通过函数来实现并且函数还有一个特点:简化代码,代码复用。这里,我们以函数实现加法为例子#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>void sum(int x, int y){ printf("%d", x + y);}int main(){ int a = 0; int b = 0; scanf("%d%d", &a, &b); sum

2021-10-25 17:57:19 269

原创 C的基础知识(2)

数组:如果我们要存储1-10的数字,怎么存储?C语言中给了数组的定义:一组相同类型元素的集合#include<stdio.h>int main(){ int arr[10] = { 1,2,3,4,5,6,7,8,9,10 }; return 0;}arr是数组名,int arr[10]的意思是arr这个数组中包含十个元素,他们都是int类型#include<stdio.h>int main(){ char arr1[10] = { 0 }.

2021-10-20 01:08:00 1721 1

原创 C的基础知识(1)

#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>#define x 10#define X 5 #define Y X+1 #define Z Y*X/2int a = 20;//全局变量int main(){ //全局变量与局部变量 int a = 10;//局部变量 //当全局变量和局部变量冲突时,输出结果如何呢? printf("a = %d", a);//a = 10; //由printf的输出结果,我们便可.

2021-10-17 23:48:02 366 5

空空如也

空空如也

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

TA关注的人

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