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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機C語言keile5<<=為什么會報錯?

[復制鏈接]
跳轉到指定樓層
樓主
keile5<<=為什么會報錯?
打算把51的程序移植到32
在keil4中能用data1=data1<<=1;
但是在keil5給32位寫程序時會出現錯誤


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

使用道具 舉報

沙發
ID:824490 發表于 2023-1-29 22:32 | 只看該作者
話多 必失!
data1<<=1; // 有這個就可以了
data1=data1;//這個就不用了
回復

使用道具 舉報

板凳
ID:1034262 發表于 2023-1-29 23:14 | 只看該作者
語法錯誤吧。
要么是:data1 <<= 1;
呀么是:data1 = data1 << 1;
回復

使用道具 舉報

地板
ID:883242 發表于 2023-1-30 07:22 | 只看該作者
a<<=b等效于a=a<<b
data1=data1<<=1; 展開后就是:
data1=data1=data1<<1;
這不是典型的語法錯誤還是什么?
回復

使用道具 舉報

5#
ID:1063596 發表于 2023-2-20 14:24 | 只看該作者
復合運算符本身就包含給變量賦值的意思,類似 a+=3 -> a=a+3 ,是不需要再寫一個等于號的。
同類的寫法 a*=2,a+=3,a-=5,a/=6,a%=7,a|=8,a&=1。
基本運算符和位運算都可以給成復合運算符~
回復

使用道具 舉報

6#
ID:1059013 發表于 2023-2-20 18:50 | 只看該作者
加個括號data1=(data1=data1<<1);試試
左結合的原因吧
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

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