编辑2:甚至做"ls*()"导致bash不返回并使用100%的一个cpu.有谁知道为什么bash这样做?
我正在学习C并学习参数,并且想知道当作为参数传递时,哪些角色做了奇怪的事情.我通过bash将没有引号的"*()"传递给ac程序,如:
$ ./program *()
Run Code Online (Sandbox Code Playgroud)
无法使用ctrl c或ctrl z退出Bash.当我看到htop时,它使用100%的一个CPU而且我必须使用SIGKILL.有谁知道这里发生了什么.我只是好奇.
编辑:即使是简单的程序
#include <stdio.h>
int main(int argc, char *argv[]){ return 0; }
Run Code Online (Sandbox Code Playgroud)
导致这种行为.
我自己在C中开发一个ncurses应用程序.问题是putty会显示像ACS_VLINE这样的替代字符集字符作为字母.我的地方是
LANG=en_US.UTF-8
Run Code Online (Sandbox Code Playgroud)
我已经定了
export NCURSES_NO_UTF8_ACS=1
Run Code Online (Sandbox Code Playgroud)
我也把putty设置为UTF-8并尝试了不同的字体.实际机器上的tty上的字符显示正常,所以我认为问题在于putty.我也尝试过连接ncursesw而不是ncurses.
在java中,类变量和形式参数可以具有相同的名称,类变量使用"this"关键字引用.c ++中有类似的东西吗?
java中的示例
public class A {
private int x;
public void setX(int x) {
this.x = x;
}
}
Run Code Online (Sandbox Code Playgroud)