找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

C語言小白再請教 *p 和 /0 是什么意思

[復(fù)制鏈接]
ID:477441 發(fā)表于 2022-1-11 17:22 | 顯示全部樓層 |閱讀模式
void write_string(unsigned char hang,unsigned char add,unsigned char *p)  //改變液晶中某位的值,如果要讓第一行,第五個(gè)字符開始顯示"ab cd ef" ,調(diào)用該函數(shù)如下write_string(1,5,"ab cd ef");
{
        if(hang==1)   
                write_com(0x80+add);
        else
                write_com(0x80+0x40+add);
        while(1)
        {
                if(*p == '\0')  break;
                write_data(*p);
                p++;
        }
請教子函數(shù)名稱中的 unslgned char *p 中的  *p是代表什么意思
還有 while 循環(huán)中的  (*p=='\0' ) 我也不知道怎樣理解   

回復(fù)

使用道具 舉報(bào)

ID:624769 發(fā)表于 2022-1-11 19:37 來自觸屏版 | 顯示全部樓層
首先,你可以理解為,*p==0x00  的另一種寫法。然后,*p是一個(gè)指針變量。
回復(fù)

使用道具 舉報(bào)

ID:592807 發(fā)表于 2022-1-12 09:08 | 顯示全部樓層
\0是字符串結(jié)束標(biāo)志
回復(fù)

使用道具 舉報(bào)

ID:824490 發(fā)表于 2022-1-12 09:25 | 顯示全部樓層
if(*p == '\0')  break; ==>翻譯成人話就是:當(dāng)指針‘P’指向的變量值為0(或者說字符串結(jié)束),跳出。。。。
回復(fù)

使用道具 舉報(bào)

ID:477441 發(fā)表于 2022-1-12 09:36 | 顯示全部樓層
感謝老師指教,明白了。   我還要再溫習(xí)一下指針
回復(fù)

使用道具 舉報(bào)

ID:962286 發(fā)表于 2022-1-12 09:58 | 顯示全部樓層
1.  unsigned char *p是定義一個(gè)指針變量p;
2.  *p == '\0'中的*p是取指針p所指向的內(nèi)存中的值;
3.  *p == '\0'中的'\0'是空字符,字符串最后會(huì)跟一個(gè)空字符,來表示字符串的結(jié)束;
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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