美文网首页c/c++编程学习基地
C语言指针关于指针名称以及所指变量的认识

C语言指针关于指针名称以及所指变量的认识

作者: Python编程导师 | 来源:发表于2019-11-30 22:32 被阅读0次

几个月没有写博客,我认为这代表了几个月以来我的编程技术没有进步。

这次的指针问题其实是我上个月就拖下来的问题,我以为我懂了,其实我没有。

image

代码如上。

目的其实是在一列entry的最前面再加一个entry。其实我知道有更简单的方法。(然而其实代码已经很简单了)

原代码(错误代码如下)

image

当代码header = element放在insertEntry函数定义的最后一行时,main函数中的header并不会改变。指针在函数中可以改变的是指针所指地址变量的值,比如header -> value , header -> next。这些是可以被改变的(在main中被改变),而在main以外的函数中改变header所指向的位置,并不会改变main函数中header所指向的位置(the value of the pointer is copied into the formal parameter when the function is called. Therefore, any change made to the formal parameter by the function does not affect the pointer that was passed to the function. Although the pointer cannot be changed by the function, the data elements that the pointer references can be changed!(Stephen G. Kochan, Programming in C)).当时读教材里的这句话感到似懂非懂,但应该就是这个意思。指针指的数据可以改变,指针本身和其他传入函数的变量一样也是个copy不能改变。

下面是一个值被改变的例子:

image

当第二个元素在函数内被移除,改变的是next的地址,在main函数中同样被移除。

晚上试一试可不可以用指针的指针解决这个问题。另外有一个疑问:

image

output:

image

为什么可以有printf(message)这种python的存在。。。

最后,如果你想学C/C++可以加入编程qq群:825414254获取素材资料以及开发工具和听课权限!

image

相关文章

  • C语言指针关于指针名称以及所指变量的认识

    几个月没有写博客,我认为这代表了几个月以来我的编程技术没有进步。 这次的指针问题其实是我上个月就拖下来的问题,我以...

  • [Swift]结构体指针操作

    C语言的指针操作 在c语言中申明一个变量并通过指针修改该变量的值 a value is 2 c语言操作结构体指针操...

  • 带小白学C语言指针

    C语言里指针才是C语言的开始和指针;C语言里基本所有东西都是由指针演变而成; 指针是指向地址的变量,类型就是指针...

  • 深入理解C指针

    标签(空格分隔): C语言进阶 本文将会持续更新。。。。 指向指针的指针 在c语言中指针的操作时通过指针变量来实现...

  • 初探指针

    指针指针就是地址,指针也是C语言的一种数据类型,用指针类型定义的变量称为指针变量。指针变量与普通变量一样占有一定的...

  • Xcode崩溃原因汇总

    调用野指针 野指针定义:C语言: 当我们声明1个指针变量,没有为这个指针变量赋初始值.这个指针变量的值是1个垃圾指...

  • iOS崩溃总结

    一 野指针 C语言 当我们声明1个指针变量,没有为这个指针变量赋初始值.这个指针变量的值是1个垃圾指针 ,指向1块...

  • [C]C语言指针

    Blog C语言指针详解 C语言字符串操作 指针的作用 指针是程序数据在内存中的地址,指针变量是用来保存这些地址的...

  • C语言-指针

    指针的概念 指针就是地址,地址就是指针 指针变量是存入内存单元地址的变量 在C语言中,指针变量的长度是固定的,在3...

  • C++指针类型间强制转换

    指针变量及不同指针类型的含义 指针变量指针变量,本质上是一个变量,只是它是存放地址的变量,指针的类型代表的是它所指...

网友评论

    本文标题:C语言指针关于指针名称以及所指变量的认识

    本文链接:https://www.haomeiwen.com/subject/uruawctx.html