轮子王-原创数据结构-V2.0--内存//二级指针//小样儿练习
生活随笔
收集整理的這篇文章主要介紹了
轮子王-原创数据结构-V2.0--内存//二级指针//小样儿练习
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1》》》》》》》》》》》》》》》》》》》》》》》》》》
int main()
{char Abuf[20]={"hello"};char *Ap=NULL;Ap=Abuf;printf("0X%p:%s--0X%p:%s\r\n",Ap,Ap,Abuf,Abuf);}//0X0061FF08:hello--0X0061FF08:hello[Finished in 0.8s]2》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》
void lbDataType_memcpy(char*A,char *B)
{
A=B;
}
int main()
{char Abuf[20]={"hello"};char *Ap=NULL;//Ap=Abuf;lbDataType_memcpy(Ap,Abuf);printf("0X%p:%s--0X%p:%s\r\n",Ap,Ap,Abuf,Abuf);}//
0X00000000:(null)--0X0061FF08:hello[Finished in 0.8s]3》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》
//.error: #167: argument of type "char (*)[20]" is incompatible with parameter of type "char **" 只好做了Apbuf
void lbDataType_memcpy(char**A,char **B)
{
*A=*B;
}
int main()
{char Abuf[20]={"hello"};char *Apbuf=Abuf;char *Ap=NULL;//Ap=Abuf;lbDataType_memcpy(&Ap,&Apbuf);printf("0X%p:%s--0X%p:%s\r\n",Ap,Ap,Abuf,Abuf);}//0X0061FF0C:hello--0X0061FF0C:hello[Finished in 0.7s]這個時候你明白了 你的問題在哪里?你和別人不同在哪里
你是一個實例 不是指針
我要做什么?有個buf地址是【XXX】我希望你也指向它 我也指向它 即可!
繼續研究
int main()
{char Abuf[20]={"hello"};char *Apbuf=Abuf;printf("0X%p:%s--0X%p:%s\r\n",Abuf,Abuf,Apbuf,Apbuf);printf("0X%08X--0X%08X\r\n", &Abuf,&Apbuf);
}//
0X0061FF0C:hello--0X0061FF0C:hello0X0061FF0C--0X0061FF08[Finished in 0.7s]一旦拿地址 問題就出來了 指針過去 在&不對頭了!但是*是對的看第一階段
void lbDataType_test(void)
{lbDatatype A,B;uint8_t Abuf[20]={"hello"};uint8_t *Apbuf = Abuf;lbDataType_init_static(&A,&Apbuf,20);printf("0X%p:%s--0X%p:%s--0X%p:%s\r\n",Abuf,Abuf,Apbuf,Apbuf,A.pbuf,A.pbuf);
}void lbDataType_init_static(lbDatatype *p,uint8_t **Apbuf, uint16_t LEN)
{p->pbuf= *Apbuf;p->len = LEN;p->LEN = LEN;
}//0X20014a34:hello--0X20014a34:hello--0X20014a34:hello這樣是OK
?
總結
以上是生活随笔為你收集整理的轮子王-原创数据结构-V2.0--内存//二级指针//小样儿练习的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 获取文件名的后缀名,linu
- 下一篇: RestClient 访问elastic