有一個全局數組b[]
,需要在main()
和其他一些函數中使用。現在這個數組的大小需要根據輸入文件的大小來決定。該結構會是這樣的:根據文件大小動態分配大小爲陣列 - C
#include <stdio.h>
#include <conio.h>
char b[];
main() {
FILE *f;
f=fopen("Text.txt", "rb);
if(file_size = 200)
b[20];
else if(file_size>200) // I want to do something like this
b[50];
//Accessing b[] in the main
}
display() {
//Accessing b[] in display
}
我應該怎麼做,通過計算文件的大小。由於b[]
正在main()
以及display()
中使用,它必須是全球性的。但是,我不知道如何計算文件的大小,並在main()
之前將它分配給緩衝區。
爲什麼使用全局數組?只是使用malloc(),這是「動態內存分配」。 – moeCake
你不能同時擁有固定數組和動態數組。 –
隱式'int'在上個千年被取締,請寫現代C. –