小编d3L*_*d3L的帖子

内存耗尽(最小脚本)

这是我以前从未发生过的事情。

我收到了,Allowed memory size of X bytes exhausted但是我的脚本几乎不占用任何内存。

我用最小的代码创建了一个小的测试脚本,但是它仍然失败!

$ cat x.php
#!/usr/bin/env php
<?php

function ha($msg) {

}

ha("Hi");

Run Code Online (Sandbox Code Playgroud)
$ ./x.php

Fatal error: Allowed memory size of 62914560 bytes exhausted (tried to allocate 1081028648 bytes) in x.php on line 4
Run Code Online (Sandbox Code Playgroud)

有趣的是,如果删除该$msg函数的参数,则不会发出警告。如前所述,我从未发生过这种情况。这php.ini也是正常的。

系统信息

$ php -v
PHP 5.6.19 (cli) (built: Jun 22 2016 20:13:44)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
Run Code Online (Sandbox Code Playgroud)
$ php -m
[PHP Modules] …
Run Code Online (Sandbox Code Playgroud)

php

9
推荐指数
1
解决办法
136
查看次数

如何检索由axios post请求发送的php中的变量

我想向PHP脚本发送POST请求.我正在使用Axios:

axios.post('inc/vote.php', {
    id: this.selected,
}) .then(function (response) {
    console.log(response);
});
Run Code Online (Sandbox Code Playgroud)

在PHP文件中,我尝试这样的东西从axios中检索id变量:

$id = $_POST['id'];
Run Code Online (Sandbox Code Playgroud)

但似乎没有做任何事情.

从请求中检索变量的正确方法是什么?

javascript php ajax vue.js axios

7
推荐指数
1
解决办法
3650
查看次数

ld:为 macOS-x86_64 构建,但尝试链接为 macOS-x86_64 构建的文件

我有一个奇怪的问题,创建/使用静态库在我的 Ubuntu VM 中有效,但在 macOS 上无效:

ld: warning: ignoring file ./dist/libXXXX.a, building for macOS-x86_64 but attempting to link with file built for macOS-x86_64
Run Code Online (Sandbox Code Playgroud)

创建静态库的命令是:

ar rcs libtest.a obj1.o obj2.o ...
Run Code Online (Sandbox Code Playgroud)

编译器调用:

gcc -g -Wall -Wextra main.c -L./dist -lXXXX -o main
Run Code Online (Sandbox Code Playgroud)

在谷歌上搜索没有产生任何可用的结果,除了这个(可能)相关的问题:

可能的相关问题

gcc ld

3
推荐指数
1
解决办法
9212
查看次数

检查__thread关键字是否可用

我找不到任何能告诉我__thread关键字/功能是否存在的功能/宏.

例如,我想在没有用户定义的情况下做这样的事情 HAS_TLS

#if HAS_TLS
    static __thread int mytlsdata;
#else
    static pthread_key_t mytlskey;
#endif
Run Code Online (Sandbox Code Playgroud)

c multithreading keyword

2
推荐指数
1
解决办法
158
查看次数

在C中命名宏有限制/问题吗?

我想拥有可以包含可选参数的函数.当然这不能用C来完成,但它有可能带有一些宏观魔力:

#define _macroWith1Arg(_0, _1, macroName, ...)          _ ## macroName
#define _macroWith2Args(_0, _1, _2, macroName, ...)     _ ## macroName
#define _macroWith3Args(_0, _1, _2, _3, macroName, ...) _ ## macroName

#define macroWith1Arg(macroName, ...)               _macroWith1Arg(_0, __VA_ARGS__, macroName ## _1, macroName ## _0)(__VA_ARGS__)
#define macroWith2Args(macroName, ...)              _macroWith2Args(_0, __VA_ARGS__, macroName ## _2, macroName ## _1, macroName ## _0)(__VA_ARGS__)
#define macroWith3Args(macroName, ...)              _macroWith3Args(_0, __VA_ARGS__, macroName ## _3, macroName ## _2, macroName ## _1, macroName ## _0)(__VA_ARGS__)

#define _sum_1(_1)      (_1)
#define _sum_2(_1, _2)  (_1) + (_2)
#define …
Run Code Online (Sandbox Code Playgroud)

c macros naming

2
推荐指数
1
解决办法
2346
查看次数

在声明它时,是否可以在数组名称中包含循环计数器?(在C中)

我有这个循环,它根据用户输入的值创建一定数量的数组.我想在数组名称的末尾包含数组的计数器,使其为:array1 [],array2 [],array3 []等等,每次迭代一次.这可能吗?我们刚开始在大学学习C,所以我对它还不太了解.我尝试了以下方法:

#include <stdio.h>

int main(void)
{
    //Variables
    int i, columns, column_size;

    //Read input
    printf("Input number of columns:\n");
    scanf("%d", &columns)

    //Loop to create arrays
    for (i=1; i<=columns; i=i+step)
    {
        //Read column size
        scanf("%d", &column_size);

        //Create an array of given size for this column
        int column+"i"+[column_size];
    }

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

c arrays counter naming for-loop

0
推荐指数
1
解决办法
113
查看次数

构造函数会破坏成员变量

为什么在第二次调用构造函数时删除了初始化成员变量?

例:

class MyClass {
    private:
        unsigned myValue;

    public:
        MyClass(void)
        {
            this->myValue = 1337;

            fprintf(stderr, "myValue: %d\n", this->myValue);
        }

        MyClass(int myFirstValue)
        {
            fprintf(stderr, "myValue: %d\n", this->myValue);
        }
};

int main()
{
    /* Constructor is called */
    MyClass myInstance;

    /* Call other constructor ; myInstance->myValue is now trashed */
    myInstance = 100;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出:

myValue: 1337
myValue: 1606416392
Run Code Online (Sandbox Code Playgroud)

预期产出:

myValue: 1337
myValue: 1337
Run Code Online (Sandbox Code Playgroud)

有没有办法保持初始化成员变量?

c++ variables constructor member

-3
推荐指数
1
解决办法
107
查看次数

标签 统计

c ×3

naming ×2

php ×2

ajax ×1

arrays ×1

axios ×1

c++ ×1

constructor ×1

counter ×1

for-loop ×1

gcc ×1

javascript ×1

keyword ×1

ld ×1

macros ×1

member ×1

multithreading ×1

variables ×1

vue.js ×1