小编Bro*_*olf的帖子

如何在Objective-C中编写定时器?

我正试图用NSTimer制作秒表.

我给出了以下代码:

 nst_Timer = [NSTimer scheduledTimerWithTimeInterval:0.001 target:self selector:@selector(showTime) userInfo:nil repeats:NO];
Run Code Online (Sandbox Code Playgroud)

并且它在几毫秒内无法工作.它需要超过1毫秒.

iphone timer objective-c nsdate nstimer

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

相对路径在Xcode C++中不起作用

网上有很多帖子详细说明了相对路径在Xcode中是如何工作的.我有一个Xcode模板,我下载了相对路径DO工作,但我无法找出原因,也没有在其他项目中复制它.

首先,我在Xcode 3.1中使用C++.我不使用Objective-C,也不使用任何Cocoa/Carbon框架,只使用纯C++.

这是在我的其他Xcode模板中工作的代码:

sound->LoadMusic( (std::string) "Resources/Audio/Pop.wav" );
Run Code Online (Sandbox Code Playgroud)

这个相对路径也适用于Windows.运行以下命令为我提供了应用程序完整路径的绝对路径:

std::cout << "Current directory is: " << getcwd( buffer, 1000) << "\n";
Run Code Online (Sandbox Code Playgroud)

/应用/对myApp

我们怎样才能获得在Xcode .app包中工作的相对路径?

c++ macos xcode path

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

每个程序员都应该知道的最强大的Unix命令或脚本示例

所有程序员都应该知道很多事情,但我对我们都应该知道的Unix/Linux命令特别感兴趣.为了完成我们可能在某些时候遇到的任务,例如重构,报告,网络更新等.

我很好奇的原因是因为我在学习学位期间曾在一家软件公司担任过软件测试员,我注意到所有开发人员(开发Windows软件的人)都有2台计算机.

左边是他们的Windows XP开发机器,右边是一个Linux机器.我认为这是Ubuntu.无论如何,他们告诉我他们使用它是因为它提供了Windows在开发过程中无法完成的强大的unix操作.

这让我很奇怪,作为一名软件工程师,您认为您可以在Unix/Linux操作系统上执行哪些最强大的脚本/命令/用途,每个程序员都应该知道这些脚本/命令/用途可以解决现实世界中可能没有的任务.必然与编写代码有关?

我们都知道什么是sed,awkgrep.我对一些已经解决了一个难题的实际Unix/Linux脚本片感兴趣,以便其他程序员可以从中受益.请提供您的故事和来源.

我相信有很多这样的例子,人们会保留在他们的' Scripts '文件夹中.

更新:人们似乎误解了这个问题.我不是要求各个unix命令的名称,而是要求解决问题的UNIX代码片段.

社区的最佳答案


遍历目录树并打印出与正则表达式匹配的任何文件的路径:

find . -exec grep -l -e 'myregex' {} \; >> outfile.txt 
Run Code Online (Sandbox Code Playgroud)

调用默认编辑器(Nano/ViM)

(适用于大多数Unix系统,包括Mac OS X)默认编辑器是您的" EDITOR "环境变量设置的任何内容.即:导出EDITOR =/usr/bin/pico,位于Mac OS X下的〜/ .profile.

Ctrl+x Ctrl+e
Run Code Online (Sandbox Code Playgroud)

列出所有正在运行的网络连接(包括它们所属的应用程序)

lsof -i -nP
Run Code Online (Sandbox Code Playgroud)

清除终端的搜索历史(我最喜欢的另一个)

history -c
Run Code Online (Sandbox Code Playgroud)

unix scripting command-line

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

修改Github上推送提交的用户名

我在Github上推了一个新分叉的git repo,但在提交后我发现我的用户名不正确.我推送的用户名是"Brock Woolf"但它应该brockwoolf是我在github上的用户名.

我已经像这样在本地更改了默认值:

git config --global user.name "brockwoolf"
Run Code Online (Sandbox Code Playgroud)

但是如何更改已经推送的更改的用户名?

git github

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

如何在iPhone上的UIViewControllers之间共享对象?

我的应用程序是一个标签栏应用程序,每个标签都有一个单独的视图控制器.

我的第一个视图控制器(A)中有一个对象,其中包含我存储的所有应用程序数据(请忽略NSUserDefaults),当我按下按钮时,第二个视图控制器(B)需要访问该数据.我怎样才能以最好的方式实现这一目标?

iphone delegates objective-c uiviewcontroller

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

跳表切换案例问题

我试图了解跳转表及其在switch case语句之间的关系.

我被告知跳转表是编译器生成的O(1)结构,它使得查找值基本上与您可以获得的速度一样快.但是在某些情况下,Hashtable/Dictionary可能会更快.我还被告知这只有在开关盒包含ordered数据值时才有效.

有人可以确认或否认这一点并解释跳转表是什么,它的重要性和时间复杂性与使用字典或散列表相比.谢谢.

c c++ hashtable switch-statement

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

作为程序员优秀的必备数学?

我只是想把数学看作程序员.当我进行游戏编程时,我会使用数学,主要是矢量数学和偶尔的三角学.

我的问题:你是否认为作为程序员必须知道的任何必要的数学才能成为一名成功(和令人敬畏)的程序员?主要是我发现编程只是逻辑,但有时可能会使用聪明的数学(不是特定算法)来解决常见问题.

math

18
推荐指数
3
解决办法
6584
查看次数

如何旋转2D整数数组

我正在编写一个俄罗斯方块克隆,在我的游戏中,我将我的tetromino块存储为4x4块阵列.我现在需要能够旋转数组中的整数位置,以便我得到一个旋转的tetris块.我不能简单地旋转纹理,因为我的所有碰撞检测等都被设计为与2D数组一起使用.游戏是用CNA用CNA编写的.

我怎么可能顺时针/逆时针旋转我的2D数组的整数90度.

以下是我的"L"块存储的示例.

0 1 0 0
0 1 0 0
0 1 1 0 
0 0 0 0
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助.

c# c++ arrays math

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

从NSString的第一行删除换行符

如何从NSString中删除第一个\n字符?

编辑:只是为了澄清,我想要做的是:如果字符串的第一行包含\n字符,删除它否则什么都不做.

ie:如果字符串是这样的:

@"\nhello, this is the first line\nthis is the second line"
Run Code Online (Sandbox Code Playgroud)

并且与第一行中不包含换行符的字符串相反:

@"hello, this is the first line\nthis is the second line."
Run Code Online (Sandbox Code Playgroud)

我希望这更清楚.

iphone macos cocoa objective-c nsstring

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

编译器如何知道在哪里找到#include <stdio.h>?

我想知道Mac OS X,Windows和Linux上的编译器如何知道在哪里可以找到C头文件.

具体来说,我想知道它是如何知道在哪里找到#include <>括号.

#include "/Users/Brock/Desktop/Myfile.h"    // absolute reference
#include <stdio.h>                         // system relative reference?
Run Code Online (Sandbox Code Playgroud)

我假设它咨询的系统上有一个文本文件.它如何知道在哪里寻找标题?是否可以修改此文件,如果是这样,该文件驻留在操作系统上的哪个位置?

c++ compiler-construction include header-files

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