【发布时间】:2012-12-19 10:58:50
【问题描述】:
我需要 C 中的指针方面的帮助。 我必须从文件中读取,并用指向 struct rcftp_msg 的指针填充数组。 从现在开始我做了接下来的事情:
struct rcftp_msg {
uint8_t version;
uint8_t flags;
uint16_t len;
uint8_t buffer[512];
};
struct rcftp_msg *windows [10];
pfile = fopen(file,"r"); // Open the file
I have to read from the file into the buffer, but I don't know how to do it.
I tried the next:
for (i = 0; i <10; i++){
leng=fread (**windows[i]->buffer**,sizeof(uint8_t),512,pfile);
}
我认为 windows[i]->buffer 不好,因为它不起作用。
对不起我的英语不好:(
【问题讨论】:
-
你分配
windows了吗? -
您在下面有一些正确的答案,但是当您实施它们时,还可以使用 #define BUF_SIZE 10 之类的东西,而不是到处重复文字。并不是说它在功能上很重要,但它是未来可维护性的更好做法。
-
buffer[512]元素是实际大小,还是 最大 大小,len字段决定实际大小?