で宣言されたのmalloc char配列が、私は(260K前後)が大きすぎるのtypedef構造体のchar型の配列を、持っているtypedefは構造体
#define LENGTH 260000
typedef struct {
int longSize;
char hello[LENGTH ];
} p_msg;
私は以下のように、このchar型の配列にmalloc関数を使用したいと思います:
error: expected ':', ',', ';', '}' or '__attribute__' before '=' token
がどのように私はchar型の配列ををmallocすることができます
typedef struct {
int longSize;
char * hello= malloc(sizeof(char));
} p_msg;
は、しかし、それは私にエラーを与えましたか?
配列が同じサイズになるようにするには 'malloc(sizeof(char))'の代わりに 'malloc(LENGTH)'が必要です( 'LENGTH' 'char's、' sizeof(char) 'は常に1)。そのような型定義でやってはいけません。 – Dmitri
LENGTHをそれよりも大きくする必要があります – Mic