これらのうち、より効率的で優れたコードはどれですか? または、これを行うべき他の方法がありますか?
typedef struct foo {
int width;
int height;
} foo;
...以下の両方の例でこの typedef を使用していますが、実際には任意の構造です...
foo *new_foo (int width, int height) {
foo *f
if ((f = malloc(sizeof(foo)))==NULL) return NULL;
f->width = width;
f->height = height;
return foo;
}
void del_foo (foo *f) {free(f);}
int main () {
int width = 3;
int height = 4; // arbitrary values
foo *f
f = new_foo(width, height)
// do something with foo here
del_foo(f);
}
また
int new_foo (foo *f, int width, int height) {
f->width = width;
f->height = height;
return 0;
}
int main () {
int width = 3;
int height = 4; // arbitrary values
foo *f
if ((f = malloc(sizeof(foo)))==NULL) return NULL;
new_foo(f, width, height)
// do something with foo here
free(f);
}
ありがとう!タイプミスをお詫びします。