欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1687|回復(fù): 9
收起左側(cè)

關(guān)于C51單片機(jī)編程中地址覆蓋的請(qǐng)教

[復(fù)制鏈接]
ID:607146 發(fā)表于 2019-9-9 22:51 | 顯示全部樓層 |閱讀模式
我一一段代碼如下

unsigned char *p;  //聲明一個(gè)指針變量
p="123";    //賦值123給這個(gè)指針上,假定地址為0x09CE,此時(shí)0x09CE被賦值了0x31,0x09CF為0x32
*p='9';      //我想把 0x09CE覆蓋為0x39
此時(shí)查看0x09CE還是0x31,并沒(méi)有被覆蓋,這是怎么回事。如果這種方式是錯(cuò)的我應(yīng)該怎么覆蓋這個(gè)地址上的值。謝謝

回復(fù)

使用道具 舉報(bào)

ID:478885 發(fā)表于 2019-9-10 07:56 | 顯示全部樓層

*p='9';  改為*p=39;0x09CE被覆蓋為0x39了
回復(fù)

使用道具 舉報(bào)

ID:94031 發(fā)表于 2019-9-10 08:32 | 顯示全部樓層
既然用c語(yǔ)言就不要糾結(jié)具體物理地址,如果對(duì)物理地址很在乎就用匯編好了,典型由匯編初轉(zhuǎn)c者心態(tài)。。
回復(fù)

使用道具 舉報(bào)

ID:607146 發(fā)表于 2019-9-10 09:27 | 顯示全部樓層
swzh 發(fā)表于 2019-9-10 07:56
*p='9';  改為*p=39;0x09CE被覆蓋為0x39了

試過(guò)了用*p=0x39也是不行的
回復(fù)

使用道具 舉報(bào)

ID:607146 發(fā)表于 2019-9-10 09:33 | 顯示全部樓層
xuyaqi 發(fā)表于 2019-9-10 08:32
既然用c語(yǔ)言就不要糾結(jié)具體物理地址,如果對(duì)物理地址很在乎就用匯編好了,典型由匯編初轉(zhuǎn)c者心態(tài)。。

剛開(kāi)始學(xué)C51,是因?yàn)槭褂胹ystem.h的strcat函數(shù)拼接字符串,發(fā)現(xiàn)不能拼接。看了strcat實(shí)現(xiàn)方式

char* Strcat(char *dst, const char *src)
{
        assert(dst != NULL && src != NULL);
        char *temp = dst;
        while (*temp != '\0')
                temp++;
        while ((*temp++ = *src++) != '\0');

        return dst;
}

發(fā)現(xiàn)*temp++ = *src++這個(gè)執(zhí)行了但并沒(méi)有真正的把*src賦值給*temp。所以才有的這個(gè)疑問(wèn)。
回復(fù)

使用道具 舉報(bào)

ID:123289 發(fā)表于 2019-9-10 11:51 | 顯示全部樓層
0x09CE是RAM地址還是程序地址呢?
回復(fù)

使用道具 舉報(bào)

ID:15020 發(fā)表于 2019-9-10 13:09 | 顯示全部樓層
unsigned char *p;  //聲明一個(gè)指針變量
p="123";    //這句改的是p指向的地址
*p='9';      //這句改的是p所指地址的數(shù)據(jù)
兩句作用是不一樣的,p前的*號(hào)很重要
回復(fù)

使用道具 舉報(bào)

ID:607146 發(fā)表于 2019-9-10 14:17 | 顯示全部樓層
yzwzfyz 發(fā)表于 2019-9-10 11:51
0x09CE是RAM地址還是程序地址呢?

RAM地址
回復(fù)

使用道具 舉報(bào)

ID:607146 發(fā)表于 2019-9-10 14:18 | 顯示全部樓層
yutian_51hei 發(fā)表于 2019-9-10 13:09
unsigned char *p;  //聲明一個(gè)指針變量
p="123";    //這句改的是p指向的地址
*p='9';      //這句改的 ...

你好,我想實(shí)現(xiàn)先對(duì)地址賦一個(gè)值然后再用另一個(gè)值覆蓋的話應(yīng)該怎么寫(xiě)呢?
回復(fù)

使用道具 舉報(bào)

ID:610106 發(fā)表于 2019-9-10 17:04 | 顯示全部樓層
此時(shí)p指向的是只讀數(shù)據(jù)吧
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表