位域存储数组,该怎么赋值

我现在有一个2^40的 0.1布尔数组,在文件里,我想从文件里读入,存成位域型。该怎么赋值啊?图片说明求助

就是c语言读写文件,或者c++,一行一行读,用fprintf或者cin.getline 放到下面的结构中:

 struct   位域结构名
 {
  类型说明符  位域名a:位域长度;
  ……
  类型说明符  位域名b:位域长度;
};