小编use*_*287的帖子

为什么在这个C代码中发生堆栈粉碎?

我提前道歉,因为我对C中的堆栈粉碎缺乏了解.我正在使用Code :: Blocks进行ubuntu 12.04编辑.我写了一个简单的C程序,导致堆栈粉碎,但互联网搜索已经找到了一些有用的建议,为什么会发生这种情况.

示例C代码:

#include<stdio.h>

struct point3
    {float x, y, z;};

struct quadPolygon
    {struct point3 vert1, vert2, vert3, vert4;};

int writeLine(const char * objString)
    {FILE *file; file = fopen("aPlane.obj","a+"); fprintf(file,"%s",objString); fclose(file); return 0;};

int writeOBJ(struct quadPolygon myPoly)
    {
    char objString[] = "# plane def\n";  writeLine(objString);

    snprintf(objString, 128, "v %f %f %f \n", myPoly.vert1.x, myPoly.vert1.y, myPoly.vert1.z);  writeLine(objString);
    snprintf(objString, 128, "v %f %f %f \n", myPoly.vert2.x, myPoly.vert2.y, myPoly.vert2.z);  writeLine(objString);
    snprintf(objString, 128, "v %f %f %f \n", myPoly.vert3.x, myPoly.vert3.y, myPoly.vert3.z);  writeLine(objString);
    snprintf(objString, …
Run Code Online (Sandbox Code Playgroud)

c stack

4
推荐指数
1
解决办法
880
查看次数

标签 统计

c ×1

stack ×1