
正文
c语言什么时候使用指针,c语言使用指针的基本原则
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
C语言到底什么时候用指针什么时候用变量
当需要通过地址访问时,需声明为指针。例如,需要实现地址传递的函数形参要声明为指针。
什么时候都可以用指针,因为用指针的效率比用变量高。当一个函数要返回1个以上的运算结果时,就必须用指针,因为一个函数只能返回一个值,更多的得用指针“带回”。
“指针”是概念,“指针变量”是具体实现,指针也是一个变量,所以需要进行定义,而对于指针的定义,与一般变量一样。 存放地址不同 一个变量的(内存)地址称为该变量的“指针”,通过指针能找到以它为地址的内存单元。
什么时候用指针,什么直接用变量要看具体的情况。用指针速度比用变量会有所提高,那是指传递结构体等大型变量时。这时用指向结构体的指针来代替结构体变量可以减少结构体拷贝的过程。
指针,是C语言中的一个重要概念及其特点,也是掌握C语言比较困难的部分。
指针是语言自身需要的“附加变量”,所以它可用于语言自身的所有合法目标(基本变量、数组、函数、结构、联合、指针等,以及它们的各类被修饰的特殊目标)。
相关问答
Q1: C语言中,数组和指针的区别,何时应该选用数组,何时应该选用指针
任何时候都可以使用数组,使用指针。定义时,通常只有字符指针,和字符数组指针直接定义。用来表示字符串或字符串数组。其他一般定义数组。操作时用指针或数组。
指针:系统为某一个变量开辟单元格,指针便指向此单元格的变量值。数组:系统为某一组数开辟一组单元格,数组首地址便是你定义的数组变量名。数组和指针的唯一区别是,不能改变数组名称指向的地址。
数组和指针的区别:指针变量用于保存数据的地址,数组用于直接保存数据(当然你可能见过,数组的每个元素是指针,不过,一组指针也是数据,它们各自的内容才是地址)。
数组:数组是用于储存多个相同类型数据的集合。指针:指针相当于一个变量,但是它和不同变量不一样,它存放的是其它变量在内存中的地址。
区别:C语言把内存划分成四个区,它把一般的变量和数组等存在于内存中的栈区,所以数组在C语言的定义中只是一组同类型的普通变量,即使这个变量有可能是指针。
数组是用指针方式实现的,但数组值是一个常量,即不能改变数组的首地址,而指针是一个变量,可以改变它的值;如:数组 a和指针p,p=a+1;是合法的,但a=a+1;是不合法的。
Q2: c语言什么时候使用数组,什么时候使用指针?
1、什么时候都可以用指针,因为用指针的效率比用变量高。当一个函数要返回1个以上的运算结果时,就必须用指针,因为一个函数只能返回一个值,更多的得用指针“带回”。
2、int array[10];int (*ptr)[10]; //数组指针ptr,指向一个数组int[10]ptr=上例中ptr是一个指针,它的类型是int (*)[10],他指向的类型是int [10],我们用整个数组的首地址来初始化它。
3、(2)数组指针:它实际上是一个指针,该指针指向一个数组。
4、简单来说就是当你想灵活地访问地址空间,并在不需要时将其释放时,就可以考虑用指针。使用指针可以灵活地对地址空间进行操作,但是带来方便的同时也经常出现灾难性的软件问题。
5、C(2)=4*3/1*2=6。1,2,3,4,A(2)表示4个数字中选2个,考虑顺序。A(2)=4*3=12。我只拿这个东西算过双色球,其他地方还没发现能用上。
6、数组是用指针方式实现的,但数组值是一个常量,即不能改变数组的首地址,而指针是一个变量,可以改变它的值;如:数组 a和指针p,p=a+1;是合法的,但a=a+1;是不合法的。
关于c语言什么时候使用指针和c语言使用指针的基本原则的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







