![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
深入理解c指针
Axel_uestc
这个作者很懒,什么都没留下…
展开
-
深入理解c指针之概述
深入理解c指针概述 一、 指针的声明 1、通过在数据类型后面跟星号,再加上指针的名字可以声明指针。星号两边的空白符无关紧要,下面的声明都是等价的。 指针声明后,需要初始化赋值:指向未初始化的内存的指针可能会产生地址,如果将这个指针解引,指针的内容可能并不是一个合法的地址,那个地址也可能没有包含合法的数据。程序没有权限访问不合法的地址。 如下图所示,因为只声明了指针,没有初始化原创 2016-08-18 16:06:49 · 412 阅读 · 0 评论 -
深入理解c指针-内存管理
一、动态内存分配 1、 c语言中动态内存分配的步骤: (1) 用mallocl类的函数分配内存; (2) 用这些内存支持应用程序; (3) 用free函数释放内存 例如: 2、 内存泄露 如果不再使用已分配的内存却没有将其释放,就会发生内存泄露,导致内存泄露的情况可能如下: (1) 丢失内存地址 在上图中,pi重新分配地原创 2016-08-18 16:24:01 · 447 阅读 · 0 评论 -
指针与函数
指针和函数 一、程序栈 指针对函数功能的贡献极大,它们能够将数据传递给函数,并且允许函数对数据进行修改。我们可以将复杂数据用结构体指针的形式传递给函数和从函数返回,如果指针持有函数的地址,就能动态控制程序的执行流。 要理解函数及其和指针的结合使用,需要理解程序栈,调用函数的时候,会创建函数的栈帧并将其推到程序栈上,函数返回时,其栈帧从程序栈上弹出。 在使用函数时,有两种情况指针很有用。首先原创 2016-08-18 19:38:22 · 486 阅读 · 0 评论 -
指针和数组
指针和数组 一、 概述 一种常见的错误观念是数组和指针是完全可以互换的,尽管数组名字有时候可以当做指针来用,但是数组的名字不是指针,数组表示法也可以和指针一起使用,但是连着明显不同,也不一定能互换。 1、一维数组 一维数组是线性结构,用一个索引访问成员,下面的代码声明了一个5个元素的整数数组: Int vector[5]; 数组名字只是引用了一块内存,对数组做sizeof操作会得到为该原创 2016-08-18 20:09:33 · 331 阅读 · 0 评论 -
c语言 排序
// exam3.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include #include using namespace std; //遍历数组 void PrintArr(int *a,int n) { for(int i =0;i { cout } cout } /*排序*/ //1、插入排序 v原创 2016-08-21 20:55:03 · 320 阅读 · 0 评论