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

標題: 單片機C語言keile5<<=為什么會報錯? [打印本頁]

作者: 禿頭小隊長    時間: 2023-1-29 21:15
標題: 單片機C語言keile5<<=為什么會報錯?
keile5<<=為什么會報錯?
打算把51的程序移植到32
在keil4中能用data1=data1<<=1;
但是在keil5給32位寫程序時會出現錯誤



作者: 名字不是重點    時間: 2023-1-29 22:32
話多 必失!
data1<<=1; // 有這個就可以了
data1=data1;//這個就不用了
作者: coody_sz    時間: 2023-1-29 23:14
語法錯誤吧。
要么是:data1 <<= 1;
呀么是:data1 = data1 << 1;

作者: Hephaestus    時間: 2023-1-30 07:22
a<<=b等效于a=a<<b
data1=data1<<=1; 展開后就是:
data1=data1=data1<<1;
這不是典型的語法錯誤還是什么?
作者: wahacer    時間: 2023-2-20 14:24
復合運算符本身就包含給變量賦值的意思,類似 a+=3 -> a=a+3 ,是不需要再寫一個等于號的。
同類的寫法 a*=2,a+=3,a-=5,a/=6,a%=7,a|=8,a&=1。
基本運算符和位運算都可以給成復合運算符~
作者: fishafish    時間: 2023-2-20 18:50
加個括號data1=(data1=data1<<1);試試
左結合的原因吧




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1