开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
Dev C++ 5.6.2
问题(Question):
读取一个binary.txt的档进来
分别存入变量中
假如我现在要处理第一行binary
00100001000010100000000010111110
我想把它分为
前六个bit 001000
再来五个 01000
再来五个 01010
再来五个 00000
再来五个 00010
最后六个 111110
分别这六个字串存到分别不同的变量
因为对指标不太熟
所以不知如何下手...
喂入的资料(Input):
00100001000010100000000010111110
10101101010100010000000000000100
10001101010100100000000000000100
00001000000000000000001001010110
程式码(Code):(请善用置底文网页, 记得排版)
http://codepad.org/aPcehjJr
作者:
LPH66 (-6.2598534e+18f)
2014-05-06 20:13:00楼上应该跳太快了...
strncpy()一下就完成的事用bitset会不会太爆笑
strncpy的确是一个不错的解法没错,不过换我的话既然有开档的动作 那用ifstream::read来作读取n个位元的动作我会觉得是个比较合适的作法。当然,mmap是最标准的geek写法了... :D当然,要怎么处理n个bit char会是几个bit 该怎么补0我想才是这提的醍醐味(不过这种题目叫做喇赛题)
作者:
EdisonX (卡卡兽)
2014-05-08 10:05:00看要存成字串还是整数,不同做法
这提应该是某提ACM的简化版该ACM原始题目是binary, ascii范围是0-255读进来要parse成unsigned char然后用bit mask去取值算是数一数二的喇赛题 所以我还满有印象的...
作者: yvb 2014-05-08 16:45:00
ASCII 只有 7-bit, EASCII 才是 8-bit .
欸这样讲也对 o_O 我忘记题目编号了 之前一直不过不知道是不是因为这个原因... xd