久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1473|回復: 4
打印 上一主題 下一主題
收起左側

請問一下我這個C語言程序,這里的指針錯了嗎?怎么這樣?

[復制鏈接]
跳轉到指定樓層
樓主
ID:847202 發表于 2020-12-8 19:44 來自觸屏版 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式

#include<reg51.h>
sbit s1 = P3^2;
sbit s2 = P3^3;
void delay(unsigned int n)
{
        while(n--);
}
void yanshi(unsigned char a)
{
        unsigned char b;
        for(b = 0;b<a;b++)
        {
                TH0 =(65536 - 50000)/256;
                TL0 = (65536 - 50000)%256;
                TR0 = 1;
                while(!TF0);
                TF0 = 0;
        }
}
void zuo()
{
        unsigned char c = 0x01;
        unsigned char *h;
        unsigned char f;
        h = &c;
        for(f = 0;f<8;f++)
        {
                P1 = ~c;
                delay(20000);
                *c = *c<<1;
                if(c == 0)
                {
                        c = 0x01;
                }
        }
}
void you()
{
        unsigned char e = 0x80;
        unsigned char *p;
        unsigned char b;
        p = &e;
        for(b = 0;b<8;b++)
        {
                P1 = ~e;
                yanshi(4);
                *e = *e>>1;
                if(e ==0x00)
                {
                        e = 0x80;
                }
        }
}        
void main()
{
        TMOD = 0x01;
        EX0 = 1;
        IT0 = 1;
        PX0 = 1;
        EX1 = 1;
        IT1 = 0;
        EA = 1;
        
        while(1)
        {
                zuo();
        }
}
void zd()interrupt 0
{
        unsigned char j;
        j = P1;
        you();
        P1 = j;
}
void zhongduan() interrupt 2
{
        unsigned char j,i;
        j = P1;
        for( i = 0; i<3;i++)
        {  
                P1 = 0x00;
                yanshi(10);
                P1 = 0xff;
                yanshi(10);
        }
        while(!s2);
        P1 = j;
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:764088 發表于 2020-12-9 08:39 | 只看該作者
unsigned char c = 0x01;//c 是字符,不是指針
unsigned char *h; //h
h = &c; // h是指針,將字符 地址賦給指針是可以的
*c = *c<<1; //c 不是指針, 改為 :*h = (*h) << 1; 是可以的
回復

使用道具 舉報

板凳
ID:833190 發表于 2020-12-9 15:25 | 只看該作者
定義了指針h,但是后面沒有用到這程序也用不到指針,直接對變量c進行操作就行,把*c=*c<<1改成
c=c<<1。如果是想練一下指針,那就改成*h=*h<<1。
回復

使用道具 舉報

地板
ID:517466 發表于 2020-12-10 10:43 | 只看該作者
非指針變量,變量里面裝的是值
指針變量,里面裝的地址
uchar c=1 : 表示c這個單元里裝的是uchar數據。&c 表示獲得c這個單元所在的地址。
uchar *c  :表示c這個單元里裝是一個地址,這個地址里裝的是一個uchar數據。*c就是取得這個uchar數據;而直接使用c,得到的是一個地址;
回復

使用道具 舉報

5#
ID:858214 發表于 2020-12-10 16:59 | 只看該作者
改成*h=*h<<1
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲欧洲日韩精品 中文字幕 | 成人激情视频免费观看 | 日韩精品一区二区三区视频播放 | 成人欧美一区二区三区白人 | 中文字幕在线观看第一页 | www.久草.com| 国产精品一二区 | 国产精品jizz在线观看老狼 | 一区在线播放 | 国产在线小视频 | 天堂久久网 | 精品一区视频 | 99re在线 | 一区二区三区国产 | 另类二区 | 欧美大片一区 | a久久 | 国产精品一卡二卡三卡 | 久久网一区二区 | 一二三区视频 | 成人久久久 | 中文一区 | 精品久久久久久亚洲精品 | 久久久久久久久中文字幕 | 国产亚洲欧美日韩精品一区二区三区 | 精品国产一区二区三区免费 | 亚洲欧美日韩在线不卡 | 日韩高清电影 | 亚洲成人中文字幕 | 欧美天堂 | av网址在线 | 亚洲精品久久久一区二区三区 | 午夜免费福利影院 | 久草热在线 | 在线一区视频 | 中文字幕国产视频 | 精品久久久久久久久久 | av性色全交蜜桃成熟时 | 午夜免费视频观看 | 精品欧美激情在线观看 | 在线欧美日韩 |