在为堆栈中的变量声明指针时有什么意义吗?

Ale*_*dre 0 c pointers

 void my_cool_function() 
 {
   obj_scene_data scene;
   obj_scene_data *scene_ptr = &scene;
   parse_obj_scene(scene_ptr, "test.txt");
 }
Run Code Online (Sandbox Code Playgroud)

如果我能做的话,为什么我会像上面那样创建一个指向局部变量的指针

 void my_cool_function() 
 {
   obj_scene_data scene;
   parse_obj_scene(&scene, "test.txt");
 }
Run Code Online (Sandbox Code Playgroud)

以防它是相关的:int parse_obj_scene(obj_scene_data*data_out,char*filename);

Cla*_*diu 5

在您链接的特定代码中,没有真正的原因.

如果你有一个功能,它可能在功能上是必要的obj_scene_data **.你做不到&&scene,所以你必须在传递地址之前创建一个局部变量.