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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

C語言地址指針問題,請指導一下

[復制鏈接]
跳轉到指定樓層
樓主
上面第一行 char的含義和第二行 char的含義是否相同。
將常量數組寫入變量地址,正確的寫法。

不會使用指針,代碼不知道對錯,請老師指導一下,謝謝


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:1121801 發表于 2025-3-15 10:37 | 只看該作者
1,指針變量要與指向的變量類型相同,即char *p=&n;其中n必須是char n,不然執行程序時會強制轉換為指針相同的類型,而且指針不能指向不同類型的變量。
2,我沒看明白你用char定義那個for循環的i 是什么意思??char是定義一個字符的,你能用來定義 i 然后跑循環?
3,for循環中為什么一個指針變量++,一個是指針變量的值++?
回復

使用道具 舉報

板凳
ID:624769 發表于 2025-3-15 13:25 | 只看該作者
unsigned char data_array[10];
unsigned char *addr_point_0;
unsigned char *addr_point_1;

unsigned char const front[]= {0,1,2,3,4,5,6,7,8,9};  
unsigned char code front[]= {0,1,2,3,4,5,6,7,8,9};  //不知道你什么編譯器 二者選一

void main()
{
   unsigned char i;
   addr_point_0 = &data_array[0];
   addr_point_1 = &front[0];
   for(i = 0; i<10; i++)
   {
      *addr_point_0 = *addr_point_1;
      addr_point_0++;
      addr_point_1++;
   }
   while(1);
}
回復

使用道具 舉報

地板
ID:73992 發表于 2025-3-15 13:25 來自觸屏版 | 只看該作者
cyi8 發表于 2025-3-15 10:37
1,指針變量要與指向的變量類型相同,即char *p=&n;其中n必須是char n,不然執行程序時會強制轉換為指針相 ...

for(i=0;i<10;i++){
  data_arry【i】= front 【i】;
}
看這樣行不行,要是可以就不需要指針了
回復

使用道具 舉報

5#
ID:73992 發表于 2025-3-15 20:10 來自觸屏版 | 只看該作者
188610329 發表于 2025-3-15 13:25
unsigned char data_array[10];
unsigned char *addr_point_0;
unsigned char *addr_point_1;

謝謝!
回復

使用道具 舉報

6#
ID:73992 發表于 2025-3-22 01:21 | 只看該作者
188610329 發表于 2025-3-15 13:25
unsigned char data_array[10];
unsigned char *addr_point_0;
unsigned char *addr_point_1;

請問, 下面代碼。變量a越界,將unsigned char a;   換成unsigned int a;硬件運行沒有達到想要的效果。因為無法軟件仿真,編譯器是arm gcc     
        unsigned char c;
        unsigned char a;
        for(unsigned char i=0; i<16; i++){
            for( unsigned char j=0; j<8; j++){
               data_array[a] = font[c];
                a ++;
                c ++;
            }
         a = a+220;
        }   
回復

使用道具 舉報

7#
ID:73992 發表于 2025-3-22 10:57 | 只看該作者
lyonkon 發表于 2025-3-22 01:21
請問, 下面代碼。變量a越界,將unsigned char a;   換成unsigned int a;硬件運行沒有達到想要的效果。 ...

換成unsigned int a = 0;問題解決。
回復

使用道具 舉報

8#
ID:74687 發表于 2025-3-22 14:34 | 只看該作者
好像可以用 while(*addr_point_0++ = *addr_point_1++);
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表