C语言错误日志——指针返回值与数组

原创 2015年11月19日 18:00:26

#include<stdio.h>
#include<stdlib.h>

void PrintIntArray(int * arr ,int length){
	int i = 0;
	for(i = 0; i<length; i++){
		printf("%d ",arr[i]);
	}
	printf("\n");
}
int *  getArrayFormat(){
 	int a[5] = {1,2,3,4,5};  //直接返回数组名是不行,必须 取其地址返回a
        return a;
}
int *  getMallocFormat(){
	int  i=0, * a ;
	a = (int *)malloc(sizeof(int) * 5);
	for(i = 0; i< 5;i++){
		a[i] = i;
	}
	return a;
}
int main(){
	int * p;
	int aa[5] ={0};
	p = getArrayFormat();       //混乱的数字
    PrintIntArray(p,5);
	p = getMallocFormat();      //正确的值
	PrintIntArray(p,5);
    //aa= getArrayFormat();   //error C2106: '=' : left operand must be l-value
    //PrintIntArray(aa,5);
	//aa = getMallocFormat(); //error C2106: '=' : left operand must be l-value
	//PrintIntArray(aa,5);	 
	return 0;
}


    数组和指针的不同之处:

   作为参数,可以替代使用;

但是作为返回值,必须是指针,

                              接收返回值的也必须是指针。

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

C语言指针与数组易混淆知识点(一)

一指针与数组 二指针与函数 三指针数组数组指针指向指针的指针 四程序陷阱 一、指针与数组指针:指针本身也是一个变量,它的内容是指向的内容的地址。指针同样有类型的区分,char 的指针只能指向char型...
  • woshimalingyi
  • woshimalingyi
  • 2016年03月25日 15:59
  • 2999

C语言数组名及指向数组指针的小结

C语言数组名及指向数组指针的小结2012-03-13  happy123g...   阅 2133  转 13转藏到我的图书馆微信分享:C语言的数组名和对数组名取地址转自: http://blog.c...
  • qq_24373811
  • qq_24373811
  • 2016年09月05日 09:06
  • 393

黑马程序员-C语言数组与指针学习心得

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 一、数组的赋值,以下几种都是正确的: 1、int ages[5]={1,2,3,4,5}; 2、...
  • u012749656
  • u012749656
  • 2015年05月28日 23:33
  • 601

C语言中指针与数组的区别与联系

好久不写东西了,从毕业以来,整个人都懒散了很多。今天终于鼓起勇气,来写一点儿东西…… 指针与数组对于C语言程序员来说肯定不会陌生,一说起这个话题,我就想起了曾经被内存、地址、地址里的内容这些概念狂虐时...
  • cyfcsd
  • cyfcsd
  • 2017年02月03日 17:29
  • 4419

C语言关于数组与指针内容小结

数组的基本概念 什么是数组:数组就是:数组是相同类型的元素的一个集合       类型说明符 数组名 [常量表达式]; 其中,类型说明符是任一种基本数据类型或构造数据类型。数组名是用户定义...
  • Loving_Forever_
  • Loving_Forever_
  • 2016年05月08日 14:31
  • 1452

C语言:数组和指针的区别

实际上关于数组与指针的区别这个问题在《C专家编程》已经有很详细的阐释,但我想用自己的语言说一说我的理解。数组是指针?最近在做数据结构课设,其中一个函数发生了令人费解的错误,简化后的代码如下:#incl...
  • imred
  • imred
  • 2015年05月02日 19:08
  • 13926

C语言 数组 下标与指针 效率解析

以字符串拷贝函数为例,解析数组中下标与指针的效率情况。 指针的效率至少和下标相同。(原因参考C下标的实现原理,注意编译器差异,因为部分编译器针对下标设置了特殊汇编指令,不做考虑) #def...
  • L_Backkom
  • L_Backkom
  • 2012年04月24日 11:14
  • 1186

从一道C语言数组指针的笔试题看面试者的能力和心态

先将原题贴上:        试解释int const (*(**((* f)(int (* const x)[4])))[2][3])[4]        刚看到这道题直接就懵了,脑子里第一反应...
  • sd396791336
  • sd396791336
  • 2013年09月02日 13:36
  • 1213

初学Linux(二)---Linux下C语言中的数组与指针

初学Linux(二)—Linux下C语言中的数组与指针在经过阶段一的linux学习之后,我来到了阶段二的Linux下的C语言编程,虽然学到目前linux下的C语言似乎跟之前学的C语言所差无几,但是按照...
  • Hanghang_
  • Hanghang_
  • 2017年02月15日 22:07
  • 232

曾经进公司面试的C语言有关指针和数组的笔试题

原题如下: #include int main(void) { int i , j ; unsigned int Array_A[32]; unsigned int *pPointer; ...
  • morixinguan
  • morixinguan
  • 2016年02月06日 20:51
  • 999
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C语言错误日志——指针返回值与数组
举报原因:
原因补充:

(最多只允许输入30个字)