私はCプログラミングの初心者です(私の主な分野はJavaです)。Javaには、次のように作成できるArrayListが存在します
ArrayList<Class> arraylist = new ArrayList<Class>();
私のクラス Class には、int や string などの複数の項目を含めることができます。
cでは、それはできないが、そのようなことをする必要があることがわかったので、これを行いました
typedef struct vectorObject {
int myInt;
char *charPointer;
} vectorObject;
次のように構造体のポインターを定義します。
vectorObject *listVectorObject;
と使用
#define MAX_FILE_SIZE 50000
そのメモリを割り当てたいときは、これを使用します:
int i;
listVectorObject = malloc(MAX_FILE_SIZE);
if (listVectorObject == NULL ) {
printf("Out of memory1\n");
exit(1);
}
for (i = 0; i < MAX_FILE_SIZE; i++) {
listVectorObject[i].charPointer= malloc(MAX_FILE_SIZE);
if (listVectorObject[i].charPointer == NULL ) {
printf("Out of memory2\n");
exit(1);
}
}
問題は、私がいつも得ることです
Out of Memory2
私はすでにすべてを試しましたが、間違いがどこにあるのかわかりません。手伝っていただけませんか?ありがとう!!