求助 关于结构体作为函数的参数的问题

2019-07-15 16:11发布

本帖最后由 tulesheng 于 2015-8-30 07:51 编辑

这个问题已经困扰我好长时间了 希望对这方面了解的朋友指点一下
#include <reg52.h>

typedef struct
{
        unsigned char a;
        unsigned char b;
}mytask;

mytask task1;

void delayms(unsigned int x)//延时函数
{
        unsigned char t;
        while(x--)
        {
                for(t=0;t<120;t++);
        }
}

void inittask(mytask task,unsigned char i,unsigned char j) //指望这个函数帮我给结构体成员赋值
{
        task.a=i;
        task.b=j;
}

void main()
{
        inittask(task1,0x0f,0xf0);//我希望引用这个函数给自定义的结构体变量task1的成员赋值,但是实现不了

        while(1)//让led灯的低四位灯,和高四位灯轮流闪烁
        {
                P2=task1.a;
                delayms(500);
                P2=task1.b;
                delayms(500);
        }
}





我先写了一个结构,然后希望通过函数void inittask(mytask task,unsigned char i,unsigned char j)对结构中的成员赋值,编译通过了 但是其实并没有成功赋值,得不到闪烁的结果。这个问题困扰了我好久 不知道为什么。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。