小编Val*_*adu的帖子

任何开源快速傅立叶变换C实现?

我试图在C中使用FFT找到录制声音的基频.有人会知道C中的开源实现我可以修改和使用吗?

谢谢!

c

3
推荐指数
2
解决办法
7571
查看次数

PHP:如果$ url包含空格,imagecreatefromjpeg($ url)不起作用?

我使用脚本从另一台服务器获取图像并将其存储在数据库中,问题是当网址中有空格时,该函数不会抓取任何内容.

我尝试编码url并简单地用%20替换所有空格但没有成功.

我的选项已经用完了,如果有人能给我一些想法会很棒!

谢谢!

$thumb=imagecreatefromjpeg(http://www.dummysite.ca/imageone.jpg); //->WORKS
$thumb=imagecreatefromjpeg(http://www.dummysite.ca/image one.jpg); //->DOESN'T WORK
Run Code Online (Sandbox Code Playgroud)

编辑:更多信息:我正在运行CentOS机器,PHP 5.2.17

编辑:找到答案,用%20替换空格实际上是WORKS但是我很愚蠢,只能在imagecreatefromjpeg电话会议之前更换它,事实证明还getimagesize需要它

php

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

CGRectMake(currentobject.frame.origin.x,currentObject.fram ..更快的方式?

很多时候,我想要将一个物体移动2点,所以我会说:

CGRectMake(currentobject.frame.origin.x+2, currentObject.frame.origin.y, currentObject.frame.size.width, currentObject.frame.size.height);
Run Code Online (Sandbox Code Playgroud)

有没有更快的方法,我可以改变1件事,或者我可以快速参考当前值?

iphone objective-c

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

如何取消使用[performSelector:withObject:afterDelay:]注册的方法?

我的问题是,在我的应用程序中的某个时刻,我调用[performSelector: withObject: afterDelay:]但是在延迟期间可能长达1秒,发生了几件事情,决定是否应该调用延迟的方法,但是,一旦注册,选择器就不能未注册,所以它无论如何都会被调用.我试图放一个标志,但是因为[performSelector: withObject: afterDelay:]一个标志失败就可以在一秒钟内被多次调用.

我想我在某种程度上需要能够在调用之前停止特定的方法.这甚至可能吗?

iphone objective-c ipad

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

子类化UIBarButtonItem

我正在尝试创建UIBarButtonItem该类的子类.该按钮添加在nib文件中,我将其类设置为界面构建器中的自定义类.现在,如果这是一个UIView类或子类,我将覆盖该 - (id)initWithCoder:(NSCoder *)decoder方法以启动额外的自定义,但是UIBarButtonItem缺少这样的方法.我试图覆盖它的-(id)init方法,但没有成功,它不会被调用.我的问题,我应该在哪里开始自定义?我需要覆盖哪种方法?

cocoa-touch objective-c uibarbuttonitem ipad ios

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

使用结构指针作为@property

我想使用struct指针作为一个,@property但我不知道我应该如何释放它.

这就是我现在拥有的:

.H:

@property (nonatomic, assign) InfoStruct * info;
Run Code Online (Sandbox Code Playgroud)

.M:

@synthesize info; 
- (id)init {
    self = [super init];
    if (self) {
        self.info = (struct InfoStruct *) malloc(sizeof(struct InfoStruct));
    }
    return self;
}

-(void)dealloc {
    free(info);
    [super dealloc];
}
Run Code Online (Sandbox Code Playgroud)

上面的代码可能会造成任何麻烦吗?这是对的吗?似乎工作正常,但我想我需要一个保证.

iphone macos objective-c ipad

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

在 C 中用单个值初始化数组 (GCC)

我在头文件中声明了一个数组,如下所示:

int snapshot[kSnapshotSize];
Run Code Online (Sandbox Code Playgroud)

我真的很想在我的实现文件中像这样初始化:

snapshot[kSnapshotSize] = {[0 ... kSnapshotSize-1] = 5};
Run Code Online (Sandbox Code Playgroud)

然而编译器抱怨:“预期表达式”

谁能告诉我我做错了什么?

更新:int snapshot[kSnapshotSize] = {[0 ... kSnapshotSize] = 5};似乎有效,所以可能我错过了一些基本的东西。我想我可以使用memset,但首先要确定这是不可能的(以及为什么)

更新2:正如你们许多人指出的那样,似乎只能初始化一个这样的数组,而不能稍后填充它。我最终使用了一个for循环。

c gcc

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

使用inotify-tools作为守护进程处理数据

我有一个bash脚本,它使用inotify-tools处理一些数据,以了解文件系统上何时发生了某些事件.如果在bash控制台中运行它可以正常工作,但是当我尝试将其作为守护程序运行时它会失败.我认为原因是inotifywait命令调用的所有输出都转到了一个文件,因此,之后的部分| while不再被调用.我该如何解决这个问题?这是我的剧本.

#!/bin/bash

inotifywait -d -r \
-o /dev/null \
-e close_write \
--exclude "^[\.+]|cgi-bin|recycle_bin" \
--format "%w:%&e:%f" \
$1|
while IFS=':' read directory event file
do

    #doing my thing

done
Run Code Online (Sandbox Code Playgroud)

因此,-d告诉inotifywait要作为守护进程运行,-r以递归方式执行,并且-o是保存输出的文件.在我的情况下,文件是/dev/null因为我不需要输出,除了在命令(| while...)后处理部分

linux bash shell inotify-tools

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

通过在Chipmunk中对其施加正交力来围绕其中心旋转身体

我试图通过施加正交(对身体方向)力并产生所需的扭矩来围绕其自身中心旋转身体.然而,这也会移动身体(自然),我只需要旋转.这是我的代码.请注意,我不想手动设置角度/方向,而是尝试使用此旋转力来实现它.

cpFloat dot = cpvdot(turningN, cpvnormalize_safe(cpBodyGetRot(body)));
cpFloat cross = cpvcross(turningN, cpvnormalize_safe(cpBodyGetRot(body)));


cpVect rotN;
if (cross<=0) {
    rotN = cpvperp(cpvnormalize_safe(cpBodyGetRot(body)));
}else{
    rotN = cpvrperp(cpvnormalize_safe(cpBodyGetRot(body)));
}

cpVect rotF = cpvmult(rotN, 300*(1-dot));
cpBodyApplyForce(body, rotF, cpv(75,14));
Run Code Online (Sandbox Code Playgroud)

turningN是指示身体应该具有的方向的向量.我制作了点积,这样当我的身体朝向所需的方向时,我会越来越少地旋转.

编辑

所以,正如@DGH指出的那样,我们需要增加一个方向和幅度相同的力,但是与我们的旋转力相反并朝向物体的中心.所以,我只需要添加这行代码就可以了:

cpBodyApplyForce(body, cpvneg(rotF), cpvzero);

vector chipmunk

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

是 - [NSArray lastObject]记录了返回自动释放的对象?

我最近进入这个关于是否辩论lastObject返回一个自动释放的对象与否.我一直认为它确实存在,而且我从来没有遇到过问题,但是,来考虑一下,大多数时候我使用这种方法,我的收藏品都是参考,所以,显然,即使它只是一个简单的参考,代码将工作正常.因此,关于返回值的自动释放性质,似乎我错了(基于一些SO答案),但是,我试图在Apple的文档中找到关于它的一些内容,但未能这样做.

Apple是否记录了lastObject自动释放它返回的对象?如果是这样,它在哪里记录?如果事实证明这是真的,他们为什么这样做呢?我在上述辩论中得到的答案对我来说没有意义,该集合可以保留并自动释放该对象吗?这样,对象在runloop结束时仍然有效.

cocoa cocoa-touch memory-management objective-c

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