无数的教科书都几乎没有严肃认真的面对这个问题。数组名就一定代表指向数组第一个元素的指针吗?猜猜下面的代码输出是怎么样的:
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->
charga[]="abcdefghijklm";
voidmy_array_func(charca[10]){
printf("addressofarrayparam=%#x\n",&ca);
printf("addressofca[0]=%#x\n",&ca[0]);
printf("addressofca[1]=%#x\n",&ca[1]);
printf("++ca=%#x\n\n",++ca);
}
voidmy_pointer_func(char*pa){
printf("addressofptrparam=%#x\n",&pa);
printf("addressofpa[0]=%#x\n",&pa[0]);
printf("addressofpa[1]=%#x\n",&pa[1]);
printf("++pa=%#x\n\n",++pa);
}
intmain()
{
printf("addressofglobalarray=%#x\n",&ga);
printf("addressofga[0]=%#x\n",&ga[0]);
printf("addressofga[1]=%#x\n\n",&ga[1]);
my_array_func(ga);
my_pointer_func(ga);
system("PAUSE");
return0;
}
如果你发现结果数组参数和数组参数第一个元素的地址不一样,不要太吃惊,请在两个my_func里面打印看看
*(&ca)和
*(&pa)的内容看看。如果你在此时用sizeof看看参数数组的大小你会更吃惊的,自己试试吧;-)
分享到:
相关推荐
详细剖析:指针函数、函数指针、指针数组、数组指针、双重指针、指针与动态内存分配 个人总结要点: 本质: 地址要用指针来存储,指针是用来存储地址的!!! 重难点: 指针指向的地址,也就是指针存储的地址!!...
14. 选择器(Selector):在Swift中,选择器用于与Objective-C的消息传递系统交互,它代表了一个方法名。 15. @UIApplicationMain属性:这个属性用于标记应用程序的入口点,指定一个包含main方法的类。 16. @objc...
《Swift4最新版ObjCCN-Swifter-Tips深度解析》 Swift,作为Apple公司推出的一种强大且安全的编程语言,被广泛应用于iOS、macOS、watchOS以及tvOS的开发。随着技术的不断发展,Swift4版本的发布带来了许多新特性和...
D3-Tips-and-Tricks-Latest.pdf 最新版D3.js技法与教程,使用D3引擎进行前端数据可视化,一步一步学习D3的可视化编程
很多 Swift 的学习者 -- 包括新接触 Cocoa/Cocoa Touch 开发的朋友,以及之前就使用 Objective-C 的朋友 -- 所共同面临的一个问题是,入门以后应该如何进一步提高。也许你也有过这样的感受:在阅读完 Apple 的教程后...
KTH-TIPS纹理材质数据集,作为一个广泛使用的资源库,为研究者和开发者提供了丰富的素材,以进行纹理识别、材质属性分析以及计算机视觉相关领域的研究。本文将详细介绍该数据集的内容、特点以及其在相关领域的应用。...
每个子文件夹代表一个纹理类别,内部存储了该类别的所有图像。MATLAB提供了强大的图像处理和机器学习工具箱,可以方便地读取、预处理、特征提取以及训练分类模型。 在预处理阶段,通常会执行图像的归一化、尺寸调整...
Android-android-tips-tricks.zip,[备忘]android开发的技巧,安卓系统是谷歌在2008年设计和制造的。操作系统主要写在爪哇,C和C 的核心组件。它是在linux内核之上构建的,具有安全性优势。
n: 1-9 或 01-99 或 001-999。 3.增加固定图像的背景色可以透明。 splashimage [--offset=[type]=[x]=[y]] FILE 类型[type]:bit 7: 透明背景 2016-02-14(yaya) setmenu 函数增加菜单项目背景短/满参数(默认...
在Web开发中,文本气泡通常用于创建提示、通知或者对话框,它们通常有一个指向相关元素的箭头。CSS3是CSS(层叠样式表)的第三个主要版本,它引入了许多新的特性和功能,使网页设计更加丰富和动态。 在CSS3中,创建...
在探讨《Swifter - 100个Swift必备tips》这本书所涵盖的知识点之前,需要明确,本书主要面向那些对Swift语言有一定基础,希望进一步提升编程技巧和理解Swift深层次特性的读者。从书名和描述中可以提炼出以下几个重点...
根据提供的文件信息,以下是关于“Swifter-100个tips-2018年6月”相关知识点的详细说明: 1. Swift 新元素:Swift 语言自发布以来,不断有新的特性加入,这些新元素可能是语言设计的优化、新语法的引入或者新库的...
- **知识点概述**:在 Objective-C 和 Swift 中,`selector` 是一个非常重要的概念,用于指向一个特定的方法或者函数。在 Swift 中,我们可以利用 `selector` 来实现动态方法调用等功能。 - **应用场景**: - **...
定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组——正确。 - D. 定义了基类型为int的具有三个元素的整型数组——错误。 - **正确答案**: C ### 19. Tomcat服务器端口号 - **知识点**: ...
纹理图像分类数据集,KTH-TIPS数据集,包含orange-peel、bread等10类纹理图像