c语言中定义指针的疑问,关于c语言指针的概念问题

本文目录一览:

关于c语言指针应用的一些疑问?

1: 只是类型变化,其值是不变的。

2,3.1:没问题

3.2:没啥技巧,这个就是一个记忆过程,把课本上关于运算符结合顺序和优先级的内容多看看

3.3:当然不是,这只是取这个指针指向的数组的下标为act_e-header.s.d_size的元素而已

4:这是地址比大小。如果地址在同一个数组中当然有意义,数组中的元素总是按顺序排的,地址小的下标也小

c语言指针的疑问

你是自学还是老师教到这里了?

你要改变传递参数的值, 就要传入该参数变量的地址, 哪怕它本身就是一个指针变量

//或者把主函数中的p,q变量当作是一个int变量,但是在函数中取得其指向的值时要显式转换为int*

void swap(int * p,int * q)

{

int t = *p;

*p=*q;

*q=t;

printf(“swap函数排序*p=%d,地址是%d,*q=%d地址是%d\n\n”,*(int*)p,*p,*(int*)q,*q);

return;

}

int main(void)

{

int a =20,b=10 ,*p = a,*q= b;

printf(“原来主函数a地址是%d,b地址是%d,p和q是%d和%d\n\n”,a,b,p,q);

swap(p,q); //若ab则交换地址,实现不改变ab的值且排序

printf(“再次打印:a=%d,b=%d,*p=%d,*q=%d,p地址%d,q地址%d\n”,a,b,*p,*q,p,q);

return 0;

}

C语言指针问题

指针就是地址,而指针变量就是存放地址的变量,比如int

*p;*p整个来看就是变量,和变量的含义是一样的,而p表示的才是指针变量,里面存的是一个地址(指针);*p表示的是去这个地址的内容,也就是相当于变量。所以int

a,*p实际上定义的都是变量。是取址运算符,n是去变量n存储单元的地址,n也就是一个指针(地址),指针和地址的意义其实是一样的。指针变量就是可以存放不同指针的变量。指针加上*,表示的是取指针存储单元的内容。和变量是一样的。指针这里很难理解的,你光靠别人说的是理解不了的,好好看看书上的解释,再自己变成试验。指针就是地址,地址就是指针,指针变量就是存放不同指针/地址的变量,指针变量前面加*就是取指针/地址存储单元的内容。

关于c语言中指针的小疑惑!

你看到的*p1=a应该是在定义的时候就给值的情况比如: int *p=a

而p1=a应该是定义之后给值的情况比如: int *p; p=a;

C语言规定,可以在定义时给值的

关于C语言指针的一个疑问?

int *p=a;这是定义p,并对p赋值

*p=a;这是对*p赋值

两者不一样

关于C语言指针定义的问题

a是行指针,也就是指向一个包含3个int一维数组的指针(地址就是指针,a是指针常量,p是指针变量)。你要将a赋值给p,就要用行指针来接,所以你声明的p是指向一个包含3个int的指针p;如果声明的是int

*p,p就是指向int的指针,数据类型不匹配。

输出的话,可以这样p[i][j],上面说了,a,p都是地址,a能做的,p就能,只是说p是可变的,a不是。

当然你可以强转:

int*p;

p=(int*)a;

但是这样的话你的p是,指向int的指针,

输出就不能那样了,改为:

printf(“%d”,*(p+3*i+j));

或者

printf(“%d”,p[3*i+j]);

就是把二维当一维,直接看元素在第几个。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/240406.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-12 12:21
下一篇 2024-12-12 12:22

相关推荐

  • Python3定义函数参数类型

    Python是一门动态类型语言,不需要在定义变量时显示的指定变量类型,但是Python3中提供了函数参数类型的声明功能,在函数定义时明确定义参数类型。在函数的形参后面加上冒号(:)…

    编程 2025-04-29
  • AES加密解密算法的C语言实现

    AES(Advanced Encryption Standard)是一种对称加密算法,可用于对数据进行加密和解密。在本篇文章中,我们将介绍C语言中如何实现AES算法,并对实现过程进…

    编程 2025-04-29
  • 学习Python对学习C语言有帮助吗?

    Python和C语言是两种非常受欢迎的编程语言,在程序开发中都扮演着非常重要的角色。那么,学习Python对学习C语言有帮助吗?答案是肯定的。在本文中,我们将从多个角度探讨Pyth…

    编程 2025-04-29
  • Python定义函数判断奇偶数

    本文将从多个方面详细阐述Python定义函数判断奇偶数的方法,并提供完整的代码示例。 一、初步了解Python函数 在介绍Python如何定义函数判断奇偶数之前,我们先来了解一下P…

    编程 2025-04-29
  • 指针Python:为什么Python中不需要使用指针?

    在Python中,指针的使用不像其他语言一样那么常见。这是因为Python有自己的内存管理方式,所以在大多数情况下,不需要显式地使用指针。那么,为什么Python中不需要使用指针呢…

    编程 2025-04-29
  • Python符号定义和使用方法

    本文将从多个方面介绍Python符号的定义和使用方法,涉及注释、变量、运算符、条件语句和循环等多个方面。 一、注释 1、单行注释 # 这是一条单行注释 2、多行注释 “”” 这是一…

    编程 2025-04-29
  • Python被称为胶水语言

    Python作为一种跨平台的解释性高级语言,最大的特点是被称为”胶水语言”。 一、简单易学 Python的语法简单易学,更加人性化,这使得它成为了初学者的入…

    编程 2025-04-29
  • Python中的队列定义

    本篇文章旨在深入阐述Python中队列的定义及其应用,包括队列的定义、队列的类型、队列的操作以及队列的应用。同时,我们也会为您提供Python代码示例。 一、队列的定义 队列是一种…

    编程 2025-04-29
  • OpenJudge答案1.6的C语言实现

    本文将从多个方面详细阐述OpenJudge答案1.6在C语言中的实现方法,帮助初学者更好地学习和理解。 一、需求概述 OpenJudge答案1.6的要求是,输入两个整数a和b,输出…

    编程 2025-04-29
  • Python按位运算符和C语言

    本文将从多个方面详细阐述Python按位运算符和C语言的相关内容,并给出相应的代码示例。 一、概述 Python是一种动态的、面向对象的编程语言,其按位运算符是用于按位操作的运算符…

    编程 2025-04-29

发表回复

登录后才能评论