关于C语言结构体指针的一个问题

2019-07-21 08:41发布

void hshu(  jiegouti *   m );
这个函数的参数应该是个结构体指针吧
1、用jiegouti定义个结构体变量,然后&送给这个函数是不是 ?
2、?????
     还可以这样用:
    jiegouti b[]={数组,每个元素是个结构体};
   调用函数时是这样:hshu(  (jiegouti *)   b );
理解不了。。。。
3、本来这个函数是把一个结构体进行一定的操作。
这样把数组首地址转换成结构体指针,然后不就相当于操作了数组里的第一个结构体吧(b[0])。是这个意思吗?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
1208
1楼-- · 2019-07-21 10:34
帮顶
Psheng
2楼-- · 2019-07-21 16:04
1,是将结构体的地址传入,2,数组就是指针 b就是指向jiegouti的指针 3,数组不能改变地址的
程牧之
3楼-- · 2019-07-21 20:47
void hshu(char* m);

char x[] = {数组,每个元素是char};

hshu((char*)x)
{
        for(int i = 0; i < sizeof(x); i++){
                printf("x[i] == %c", *x++);
        }
}
跟这个例子是一样的
wangmingwei093
4楼-- · 2019-07-21 23:00
 精彩回答 2  元偷偷看……
mhsdsa
5楼-- · 2019-07-22 04:28
感谢各位楼主的分享,谢谢了

一周热门 更多>