我正在尝试安装所述库以供Python使用.我尝试下载运行的Windows的可执行安装程序,但表示它没有找到Python安装.然后尝试注册(http://effbot.org/zone/python-register.htm)Python,但脚本说它无法注册(尽管键出现在我的寄存器中).
然后我尝试下载源代码包:我运行setup.py构建并且它可以工作,但是当我运行setup.py install时它会说:
running install
running build
running build_py
running build_ext
building '_imaging' extension
error: Unable to find vcvarsall.bat
Run Code Online (Sandbox Code Playgroud)
我能做什么?
UPDATE(2014年5月):就像一些评论和回答说,公益诉讼是目前unmantained,现在要走的路是用枕头(https://pypi.python.org/pypi/Pillow/,pip install pillow).
这不完全是一个技术问题,因为我知道C有足够的东西来做我需要的东西(我的意思是,不是'让语言妨碍你'),所以这个问题基本上是'什么方向'采取'问题.
情况是:我目前正在学习高级算法课程,并且为了"成长为程序员",我需要使用纯C来实现实际任务(它运作良好:几乎任何小错误你实际上都是你完全理解你正在做什么来解决它).在实现过程中,我显然遇到了必须从头开始实现"基本"数据结构的问题:实际上不仅是链表,还有堆栈,树等等.
我专注于本主题中的列表,因为它通常是一个结构,我最终在程序中使用了很多,作为"主"结构或作为其他更大的结构的"帮助"结构(例如,一个哈希树,可以解决使用链表冲突).
这要求列表存储许多不同类型的元素.我假设这里作为一个前提,我不想为每种类型重新编码列表.所以,我可以提出这些替代方案:
要明确问题:上述哪一个最好?
PS:由于我基本上处于学术背景中,因此我对在行业中使用纯C的人的观点也非常感兴趣.我知道大多数纯C程序员都在嵌入式设备领域,我不认为我面临的这种问题很常见.但是,如果那里的任何人知道它是如何"在现实世界中"完成的,我会对你的意见非常感兴趣.
大家好:快速问题:我的情况是只使用'gcc'(没有g ++)生成我的C++可执行文件是有用的.原因是我必须将代码提交给自动提交服务器,该服务器无法识别'g ++'(或'c ++',就此而言)命令.
在我的实验中,虽然我正在编译 gcc工作得很好.问题是,当我尝试链接生成的目标文件时,它会搞砸.现在,基于我从gcc手册页中所理解的内容(我可能会离开,所以告诉我,如果我),g ++基本上是gcc,但它链接了C++库.
如果是这样,我怎么能(如果可能的话)显式链接C++库而不使用g ++(或c ++)命令?
编辑:我正在添加makefile以更好地说明问题:
COMPILER = gcc
CFLAGS = -Wall -g -x c++
# MODULE COMPILATION
model: modules/model.h modules/sources/model.cpp
$(COMPILER) $(CFLAGS) -c modules/sources/model.cpp -o obj/model.o
algorithms: modules/algorithms.h modules/sources/algorithms.cpp
$(COMPILER) $(CFLAGS) -c modules/sources/algorithms.cpp -o obj/algorithms.o
io: modules/io.h modules/sources/io.cpp
$(COMPILER) $(CFLAGS) -c modules/sources/io.cpp -o obj/io.o
stopwatch: modules/stopwatch.h modules/sources/stopwatch.cpp
$(COMPILER) $(CFLAGS) -c modules/sources/stopwatch.cpp -o obj/stopwatch.o
# EXECUTABLE GENERATION
exe: model algorithms io stopwatch
$(COMPILER) $(CFLAGS) main.cpp obj/model.o obj/algorithms.o obj/io.o obj/stopwatch.o -o bin/process …Run Code Online (Sandbox Code Playgroud) 假设我有这种格式的输入文件:
VAL1 VAL2 VAL3
VAL1 VAL2 VAL3
Run Code Online (Sandbox Code Playgroud)
我正在编写一个只对VAL1和VAL3感兴趣的程序.在C中,如果我想"跳过"第二个值,我会这样做:
char VAL1[LENGTH]; char VAL3[LENGTH];
FILE * input_file;
fscanf(input_file, "%s %*s %s", VAL1, VAL3);
Run Code Online (Sandbox Code Playgroud)
意思是,我使用"%*s"格式化程序使fscanf()读取此标记并跳过它.我如何用C++的cin做到这一点?有类似的命令吗?或者我必须读取虚拟变量?
提前致谢.
我有一个相当基本的问题:我似乎无法将CakePHP连接到我的SQLite数据库.令人惊讶的是,我没有在互联网上找到很多关于它的信息,尽管我可能会查找错误的关键字.不过,这是我的连接代码:
var $default = array(
'driver' => 'sqlite',
'connect' =>'sqlite_popen',
'persistent' => false,
'host' => 'localhost',
'port' => '',
'login' => '',
'password' => '',
'database' => '/home/MY_USER_NAME/public_html/my_database.sqlite',
'schema' => '',
'prefix' => '',
'encoding' => ''
);
Run Code Online (Sandbox Code Playgroud)
但是,Cake只说"Cake无法连接到数据库".另外,我不知道在哪里可以看到"真实"日志(即从SQLite"驱动程序"返回的错误).所以,我遇到了一个死胡同.我该怎么办?
提前致谢.
对于音频格式的音乐数据,例如,有百万歌数据集(http://labrosa.ee.columbia.edu/millionsong/).是否有类似的音乐符号形式(即音符 - 而不是声音 - 存储在哪里)?任何格式(如MIDI或MusicXML)都可以.
首先,我知道这个问题(或密切的变化)已被问过一千次.我真的花了几个小时看着明显的和不那么明显的地方,但可能有一些我想念的小事.
让我更清楚地定义问题:我正在编写一个新闻通讯应用程序,我希望实际的发送过程是异步的.在用户单击"发送"时,请求立即返回,然后他们可以检查特定页面中的进度(例如,通过AJAX).它是用传统的LAMP堆栈编写的.
在我正在使用的特定主机中,出于安全原因禁用了PHP的exec()和system(),但Perl的系统函数(exec,system和backticks)却没有.所以我的解决方法 解决方案是在Perl中创建一个"触发器"脚本,通过PHP CLI调用实际的发送者,并重定向到进度页面.
截至目前,发件人的电话就是这一行:
system("php -q sender.php &");
Run Code Online (Sandbox Code Playgroud)
问题在于,它不会立即返回,而是等待脚本完成.我希望它在后台运行并让系统调用自己立即返回.我也试过在我的Linux终端上运行一个类似的脚本,实际上直到脚本完成后才会显示提示,即使我的测试输出没有运行,表明它确实在后台运行.
为了确保我没有遗漏任何明显的东西,我创建了一个sleepper.php脚本,它在退出之前只睡了五秒钟.和一个像这样的test.cgi脚本,逐字:
#!/usr/local/bin/perl
system("php sleeper.php &");
print "Content-type: text/html\n\ndone";
Run Code Online (Sandbox Code Playgroud)
我正在 Tomcat 8 上开发基于 Spring MVC 和 Hibernate 的 Web 应用程序(用于部署和本地开发)。IDE 是 Spring Tool Suite(基于 Eclipse)。
我想在我的应用程序的上下文中(当它在本地 Tomcat 上运行时)打开一个 REPL(read-eval-print-loop,如 Groovy 的、Python 的、Ruby 的等),以通过缩短代码来加速开发 -> 测试反馈回路。
也就是说,我希望能够在命令行(或在 Eclipse 中)打开一个 shell 并执行以下操作:
ClientDAO clientDAO = getAutowiredDAOFromSpringSomehow();
Client client = clientDAO.findByID(100);
client.setName("Another name");
clientDAO.save(client);
Run Code Online (Sandbox Code Playgroud)
我可以通过在控制器中的某处设置断点并使用 Eclipse 的调试器显示选项卡来执行任意代码来解决这个问题,但这有点不切实际且不舒服。
如果更方便,我愿意使用 Groovy 或 Scala 的 shell(不过,我显然仍然需要访问我的对象)。
我有哪些选择?
我认为问题标题足够清楚:是否可以在C++中使用stable_sort()一个std :: list?或者我必须将其转换为std :: vector?
我问,因为我尝试了一个简单的例子,它似乎需要RandomAccessIterators,链表没有.那么,我如何稳定排序std :: list()?
编辑:示例代码,给我一个错误:
#include <list>
#include <algorithm>
// ...
list<int> the_list;
stable_sort(the_list.begin(), the_list.end());
Run Code Online (Sandbox Code Playgroud)
g ++给了我大约30行错误(粘贴时间太长),其中一些错误指的是RandomAccessIterators(以及一些名为_merge_sort_loop的东西).这有点奇怪,因为我已经看到链接列表的一些合并排序实现,它们几乎是"顺序的".
我有一个情境,我想声明一个类成员函数返回一个依赖于类本身的类型.让我给你举个例子:
class Substring {
private:
string the_substring_;
public:
// (...)
static SubstringTree getAllSubstring(string main_string, int min_size);
};
Run Code Online (Sandbox Code Playgroud)
而SubstringTree的定义如下:
typedef set<Substring, Substring::Comparator> SubstringTree;
Run Code Online (Sandbox Code Playgroud)
我的问题是如果我在Substring定义之后放置SubstringTree定义,静态方法说它不知道SubstringTree.如果我反转声明,那么typedef表示它不知道Substring.
我该怎么做?提前致谢.