小编mko*_*mko的帖子

范围令人困惑

我对块内变量的范围感到困惑.这有效:

f = 'new'
[1,2,3].each do |n| puts f * n end
#=> new newnew newnewnew
Run Code Online (Sandbox Code Playgroud)

但这不是:

[1,2,3].each do |n|
  a ||=[]
  a << n
end
a
#=>a does not exsit!
Run Code Online (Sandbox Code Playgroud)

为什么是这样?请为我提供一些关于这个主题的资源.

ruby

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

为什么通过使用printf(%x)指针的值不同?

#include <stdio.h>
int main(void)
{
  int *ptr;
  printf("The Hex value of ptr is 0x%x",ptr);
  printf("The pointer value of ptr is %p",ptr);
}
Run Code Online (Sandbox Code Playgroud)

和输出有些不同,我不知道为什么

The Hex value of ptr is 0x24a77950
The pointer value of ptr is 0x7fff24a77950
Run Code Online (Sandbox Code Playgroud)

它显示ptr的值是一个十六进制整数,但是十六进制输出缺少part 7fff

这是printf格式问题还是其他?

c printf pointers

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

ptr =&a和*ptr = a是否相同?

在书中它解释说:

ptr = &a /* set ptr to point to a */

*ptr = a /* '*' on left:set what ptr points to */
Run Code Online (Sandbox Code Playgroud)

它们对我来说似乎是一样的,不是吗?

c pointers

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

为什么fork()的返回值在C中有2个pid值?

可能重复:
fork()如何返回两个值?

我是C的新手,我对该fork()函数的返回值结构感到困惑.

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

int main(){
  pid_t childPid;
  childPid = fork();
  printf("%d\n",childPid);
  return EXIT_SUCCESS;
}
Run Code Online (Sandbox Code Playgroud)

输出是:

28501
0
Run Code Online (Sandbox Code Playgroud)

由于pid_t是一个int类型,如何childPid有2个值?

c fork process

0
推荐指数
2
解决办法
1583
查看次数

如何在不按下按钮的情况下立即执行代码?

我制作了一个非常简单的Ajax测试代码片段:

<!DOCTYPE html>
<html>
    <head>
        <script src='main.js'></script>
    </head>
    <body>
        <button id='get-content'>Click</button>
        <p></p>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

main.js

(function(){
    window.addEventListener('load', function(){
        var xml_request = new XMLHttpRequest();
        xml_request.open('GET', '/test.txt', true);
        xml_request.addEventListener('readystatechange', change_content);
        var button_element = document.getElementById('get-content'); 
        button_element.addEventListener('click', fireup(xml_request));
        function fireup(xml_request) {
            xml_request.send();
        }
        function change_content(){
            if (xml_request.readyState == 4 && xml_request.status == 200) {
                document.getElementsByTagName('p')[0].textContent = xml_request.responseText;
            };  
        };
    });
})();
Run Code Online (Sandbox Code Playgroud)

它工作,但除了,ajax请求发送和更改p标签,没有我按下按钮,任何想法?

javascript

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

如何覆盖(重置)SIGUSR1的默认行为?

我在信号处理函数中读到了关于add signal()函数可以覆盖的默认行为:

#include <stdio.h>
#include <signal.h>
#include <unistd.h>
void signalHandler();
int main(void) {
    signal(SIGUSR1, signalHandler);
    sleep(60);
    printf("I wake up");
    return 0;
}
void signalHandler() {
    signal(SIGUSR1, signalHandler);// I add this line to overwrite the default behaviour 
    printf("I received the signal");
}
Run Code Online (Sandbox Code Playgroud)

我用另一个进程触发它

#include <stdio.h>
#include <signal.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {

    kill(5061, SIGUSR1); // 5061 is the receiver pid, kill(argv[1], SIGUSR1) doesn't working, when I get 5061 as parameter
    puts("send the signal ");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

接收器 …

c signals

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

如何通过设置生产环境在生产模式中使用puma?

我做了一个小的Sinatra应用程序.在我的Gemfile中添加gem 'puma'生产组

group :production do
    gem 'puma'
    gem 'dm-postgres-adapter'
end
Run Code Online (Sandbox Code Playgroud)

我设置了生产模式 config.ru

set :environment, :production
Run Code Online (Sandbox Code Playgroud)

但是在我运行之后,运行backup默认的webrick Web服务器.我怎么解决这个问题?

rack sinatra puma

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

for c中的循环只能有一个语句吗?

Ruby的for/in循环可以有很多语句:

for a in 1..2 do
  expression 1
  expression 2
  ..
end
Run Code Online (Sandbox Code Playgroud)

但似乎C中的循环只能有一个:

for (a = 0; a < 10; a ++) expression 1;
Run Code Online (Sandbox Code Playgroud)

有没有办法在C中的for循环中生成multiply语句?

c for-loop

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

标签 统计

c ×5

pointers ×2

for-loop ×1

fork ×1

javascript ×1

printf ×1

process ×1

puma ×1

rack ×1

ruby ×1

signals ×1

sinatra ×1