作者faradair (法拉空氣)
看板C_and_CPP
標題[問題] 把四個字元打包成一個unsigned int
時間Thu Jun 8 23:19:12 2017
題目是把輸入的字元轉成二進位
並將四個字元打包成unsigned int 再轉二進位
之前寫過兩個字元打包的
寫法大致是這樣
unsigned int packCharacters(char a, char b)
{
unsigned int pack;
pack=a;
pack <<8;
pack |=b;
return pack;
}
但這次問題是要四個字元包成一個
試過用同樣方法設定pack1 , pack2 ... 但是無法成功
而且寫法已經設定為
unsigned int packCharacters(char a, char b, char c, chaar d)
{
unsigned int pack;
pack= //只能修改此段程式
return pack;
}
因為進度確實跟不上班上的大家
老師臉書也不回應
同學作業都是抄來抄去沒人懂
想請問各位可以指點迷津嗎?
先謝謝大家了!!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.169.59.206
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1496935154.A.BF3.html
1F:推 libertyleave: pack= (a<<24)|(b<<16)|(c<<8)|d 06/08 23:28
2F:→ libertyleave: 大概是這樣吧 06/08 23:28
3F:→ faradair: 謝謝樓上!!!!!! 感激不盡 QAQ!!!!!!!!!! 06/08 23:39
4F:推 chuegou: 作法1 union 06/08 23:43
5F:→ chuegou: 作法2 uint8陣列用uint32指標去取 06/08 23:43
6F:→ chuegou: 作法3 位元運算一個一個移 同樓上 06/08 23:43
7F:→ chuegou: 另外就是...這篇我想算是作業文XD 06/08 23:45
8F:推 boss0405: union +1 06/08 23:47
9F:→ faradair: > < 不好意思 因為這個題目其實很長一串 可是唯獨這段 06/08 23:48
10F:→ faradair: 還想不出解QAQ 06/08 23:49
11F:→ faradair: 有先看過板規不能只是要答案 所以也先講出自己以為的解 06/08 23:50
12F:→ faradair: 不知道這樣是否還有違規 ~ 不好意思了 各位! 06/08 23:50
13F:推 libertyleave: 因為他註解說只能改一段 所以就直接位元移了 06/09 00:02
14F:→ pttworld: 從8發想。 06/09 11:34
15F:→ a27417332: 板規禁止的是伸手文,不是作業文吧? 06/09 14:04
16F:噓 pttuser: 作業 06/17 23:58