何时在 C 中使用指针
When to use pointers in C
我有这样的结构:
typedef struct {
int hi;
} my_struct;
使用这个有优势吗:
my_struct *test = malloc(sizeof(my_struct));
test->hi = 1;
而不是这个:
my_struct test;
test.hi = 1;
不,通常情况恰恰相反。如果你可以使用格式来满足你的要求
my_struct test;
test.hi = 1;
那么它总是更好,运行时的开销更少。当您可以不用它们时,使用内存分配器函数通常没有任何优势。
我有这样的结构:
typedef struct {
int hi;
} my_struct;
使用这个有优势吗:
my_struct *test = malloc(sizeof(my_struct));
test->hi = 1;
而不是这个:
my_struct test;
test.hi = 1;
不,通常情况恰恰相反。如果你可以使用格式来满足你的要求
my_struct test;
test.hi = 1;
那么它总是更好,运行时的开销更少。当您可以不用它们时,使用内存分配器函数通常没有任何优势。