一般简单的入参
指针传递的是地址
入参是指针类型的,那么传入的参数也应该是指针类型的
类型一:指针是单个数据
类型二:指针数组:c,d指针成为数组
- 但是对于这个方法来说就不知道传过来的指针是单个数据还是数组。
- 指针代表数组的时候是无法计算数组的长度的:4是指针里面地址的大小(32位的)
sizeof(c)算的是地址(地址大小跟位数有关)
c所指向的区域只计算第一个元素的大小(*开头表示指向的区域的第一个元素的大小)
sizeof(*c)算的是c指针指向区域数组的第一个元素的大小(与数据类型有关)
一个地址占的空间sizeof()与程序的位数有关
操作系统(程序)的位数由cpu单次运行的次数决定
32位:4字节
64位:8字节
64位的安装64位时,所占空间为8字节;安装32位时,所占空间为4字节.32位只能安装32位的。(程序>操作系统>CPU)不同程序位数可能不同。
指针代表数组时,因为无法计算数组的长度,所以它根本不知道传进来代表数组的时候数量多少个。无法知道数量有多少个,它就没办法做到处理了要给他的个数。
- 所以用这个函数,要给返回值的(return 3是应付的,不用管):
所以看有配套的数字就传的是数组
- 没有返回值
数组类型作为参数传参时都变为了指针,无法计算了,所以还是上面的那种指针传参方式算,所以最后只要是数组传参最后都是指针数组,用上面的算。
算的arr和arr2大小都是4,变成指针数组所以无法计算数组长度算的是地址。