我试图通过"The Little Lisper"并在第一章中遇到障碍.我对Emacs比较陌生(这激发了我学习Lisp和clojure的兴趣).我下载了Mit-scheme app,正在Edwin上练习.
我尝试着:
(atom? (cons a l))
Run Code Online (Sandbox Code Playgroud)
其中a是原子,l是已定义的列表.我收到以下错误:
;Unbound variable: atom?
Run Code Online (Sandbox Code Playgroud)
为什么?我使用"null"没有问题吗?功能.我以为"原子?" 是一个内部函数,检查返回的值是否为原子.
任何解释都将非常感激.我仍然没有设置我的emacs来运行方案,所有lisp方言之间的细微差别正在测试我的耐心.
我需要验证格式为000000000到255255255的IP范围,而在3组数字之间没有任何分隔符.最终IP所包含的三个组中的每一个都应该是000(是,0填充)到255.
由于这是我的第一个stackoverflow条目,如果我没有正确遵循礼仪,请宽容.
我知道如何使用hg blame来查找确切的提交更改了文件中的一行,但我找不到类似的方法来查找文件上的可执行位更改时.
我有以下一些无法编译的遗留C++代码:
#include <stdio.h>
#include <iostream>
extern ostream *debug;
Run Code Online (Sandbox Code Playgroud)
GCC(g ++)抱怨:"在'*'令牌之前预期的初始化程序"
环顾四周似乎更常见的是将这些声明为外部引用,如下所示:
extern ostream& debug;
Run Code Online (Sandbox Code Playgroud)
为什么指针无效,但是在这种情况下引用?
解:
如下所述,真正的问题是缺少std :: namespace说明符.显然,这在较旧的C++代码中很常见.
c++ ×1
executable ×1
legacy ×1
lisp ×1
mercurial ×1
mit-scheme ×1
pointers ×1
regex ×1
scheme ×1