小编P1k*_*chu的帖子

shell脚本,用于删除已存在的文件

我正在研究一些我将数据存储在文件中的东西.但每次我运行脚本时,它都会附加到上一个文件中.

我想要有关如何删除文件的帮助,如果它已经存在.

shell

154
推荐指数
7
解决办法
21万
查看次数

如何在Swift中获取按键

我正在尝试学习Swift语言,我在Youtube上学习了很多教程.由于大多数都是针对iOS的,我想制作这个版本的OSX版本:https://www.youtube.com/watch? v = 8PrVHrs10to(SideScroller游戏)

我小心翼翼地跟着它,但是当我必须更新玩家位置时,我被困在大约22分钟的视频中.我的第一个问题是获得按键.我来自C#语言,所以我想找到类似的东西

If(Keyboard.GetState().IsKeyDown(Keys.Right))
    man.Position.x += 5 //player position
Run Code Online (Sandbox Code Playgroud)

但这不存在,所以我想出了这个:

override func keyDown(theEvent: NSEvent!)
{
    updateManPosition(theEvent)
}
func updateManPosition(theEvent:NSEvent)
{
    if theEvent.keyCode == 123
    {
        man.position.x -= 2
    }
    else if theEvent.keyCode == 124
    {
        man.position.x += 2
    }
    else if theEvent.keyCode == 126
    {
        println("jump")
    }
}
Run Code Online (Sandbox Code Playgroud)

我通过使用找到了相应的值(123/124/126),println(theEvent.keyCode)但如果我必须识别很多键,它就没有用.无论如何,它适用于这个游戏,玩家的位置发生变化.但我有另一个探测器,即keyDown每次更新时都不会调用该函数(因此每秒60次),这会阻止玩家顺利移动.

那么,这是我的问题:如何在每次更新调用keyDown,并且有没有人有更简洁的方法来获取按下的键?

谢谢

keyboard macos keyboard-events sprite-kit swift

8
推荐指数
1
解决办法
7830
查看次数

为什么C中的printf()方法设计为接受任意数量的参数?

我总是问自己这个问题,为什么在C中的printf()被设计为接受任意数量的参数,是不是表示重载?如果是,纯结构化语言如何包含面向对象的语言概念,如方法重载?

c oop printf overloading

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

Linux - 无法执行二进制文件

我知道这个问题已经被问了很多,但问题仍然是我:

我有一个 64 位 ELF 可执行文件,我试图在我的 Kali VM 上运行它,但它一直告诉我该文件不存在。

这个问题大部分时候的解决办法是架构不同,但是我的kali是x86-64:

$ uname -m
  x86_64
Run Code Online (Sandbox Code Playgroud)

就像我试图执行的文件(名为“8”)一样:

file 8
8: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.27, BuildID[sha1]=0xf3b096c69086131b091d1805894fde4fae0537a0, stripped
Run Code Online (Sandbox Code Playgroud)

编辑:错误:

 $ chmod +x 8
 $ ./8
 bash: ./8: No such file or directory
Run Code Online (Sandbox Code Playgroud)

编辑2:lld:

linux-vdso.so.1 =>  (0x00007fffe37fe000)
libssl.so.1.0.0 => /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007f680fac8000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f680f73c000)
libcrypto.so.1.0.0 => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007f680f343000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f680f13f000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f680ef28000)
/lib/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x00007f680fd49000)
Run Code Online (Sandbox Code Playgroud)

我尝试安装 32 …

linux elf

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

为什么printf()在这段代码中打印出来?

这个简单的代码令我感到困惑 - 我故意打印出比传递给printf更多的整数.我预计会出错.我得到了奇怪的数字 - 它们来自哪里?

#include <stdio.h>
/* learn arrays */
void main(){
    int pout;
    pout = 6;
    printf("%i %i %i\n%i %i %i\n%i %i %i\n", pout);
}
Run Code Online (Sandbox Code Playgroud)

输出的一个例子:

6 608728840 0
-885621664 -885543392 608728816
0 0 -889304251
Run Code Online (Sandbox Code Playgroud)

单个数字不会随着重复运行而改变,但是大整数会改变.

c printf

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

标签 统计

c ×2

printf ×2

elf ×1

keyboard ×1

keyboard-events ×1

linux ×1

macos ×1

oop ×1

overloading ×1

shell ×1

sprite-kit ×1

swift ×1