指针
#include <stdio.h>sub(int *s,int n)
{
int i,j=0;
for(i=0;i<n;i++)
if(*(s+i)%2!=0) s=s; 请问这一步是怎么进行运算的呢
n=j;
}
int main()
{
int a={11,12,13,14,15,16,17,18,19,20},n=10,i;
sub(a,n);
for(i=0;i<n;i++)
printf("%d,",a);
return 0;
} 你这里传入的s指针应该是数组的首地址吧
那么*(s+i)%2 的意思就是 s % 2
数组对应的指针操作就是 例如 a 等价于 *(a+2);{:10_257:} 城头有平安 发表于 2020-12-9 18:28
你这里传入的s指针应该是数组的首地址吧
那么*(s+i)%2 的意思就是 s % 2
数组对应的指针操作就是 例如 a[ ...
就是a【10】的首地址11%2=1?,不应该呀, 1447391641 发表于 2020-12-9 19:23
就是a【10】的首地址11%2=1?,不应该呀,
不是a是的首地址 是 a
a等价于 *(a+10)这里的a + 10 是第10 个数据的地址 再加个星号就是求他存储的值{:10_257:} 1447391641 发表于 2020-12-9 19:23
就是a【10】的首地址11%2=1?,不应该呀,
咦,你是昨天和我说switch break问题的那个{:10_250:}{:10_250:}
页:
[1]