C seg故障中的链表

时间:2015-06-01 00:02:11

标签: c struct linked-list segmentation-fault

将seg故障错误与我的代码发布在下面。我是C的新手,并且遇到了一些麻烦。基本上在我的主要部分我创建了一个struct node * head(指向struct节点的指针)并将其赋值为NULL。然后我将struct node * head发送到push函数,该函数应该将用户定义的整数插入到列表的前面。我相信我在推送功能中遇到问题,任何帮助都会非常苛刻。

〜感谢

<?PHP

$plantask_global_script = array("one", "two");
$plantask_global_config = array("three", "four");
$myvar = array_merge($plantask_global_script, $plantask_global_config);

class Env implements ArrayAccess
{
    static private $container = $myvar;

    public function offsetSet($offset, $value)
    {
        if (is_null($offset)) {
            self::$container[] = $value;
        } else {
            self::$container[$offset] = $value;
        }
    }

    public function offsetExists($offset)
    {
        return isset(self::$container[$offset]);
    }

    public function offsetUnset($offset)
    {
        unset(self::$container[$offset]);
    }

    public function offsetGet($offset)
    {
        return isset(self::$container[$offset]) ? self::$container[$offset] : null;
    }
}

1 个答案:

答案 0 :(得分:1)

由于null终止符,当您使用scanf时,

n+1会将%ns个字符读入提供的缓冲区。

使用大小为2(char ans[2];)的缓冲区并检查第一个字符(ans[0] == 'y')。在致电ans时,您也不再需要使用scanf的地址。