小编Tom*_*ing的帖子

如果我不给它一点额外的空间,字符串会变得疯狂.任何人都可以解释这里发生了什么?

首先,我想说我是C/C++的新手,我原本是一名PHP开发人员,因此我习惯于以任何我喜欢的方式滥用变量.

C是一个严格的国家,编译器在这里不太喜欢我,我习惯于违反规则来完成任务.

无论如何,这是我简单的代码:

char IP[15] = "192.168.2.1";
char separator[2] = "||";   

puts( separator );
Run Code Online (Sandbox Code Playgroud)

输出:

||192.168.2.1
Run Code Online (Sandbox Code Playgroud)

但是,如果我将定义更改separator为:

char separator[3] = "||";
Run Code Online (Sandbox Code Playgroud)

我得到了所需的输出:

||
Run Code Online (Sandbox Code Playgroud)

那么为什么我需要给男人额外的空间,所以他不和他面前的男人睡觉?

c c++ string variables

36
推荐指数
3
解决办法
1634
查看次数

测试命令行工具的最佳方法是什么?

我有很多命令行实用程序,我们自己编写并经常使用.目前测试它们非常麻烦,因此我们没有像我们那样进行那么多的测试.

我想知道是否有人可以提出好的技巧或工具来做好这类事情.

这是UNIX

testing command-line automation

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

评论是否显示添加/修改了哪些版本代码有用?

我工作的项目中的一些开发人员习惯于评论他们的代码以显示其添加的产品版本,例如

// added for superEnterpriseyWonder v2.5
string superMappingTag = MakeTag(extras);
if (superMappingTag.empty())
{
     autoMapping = false;
}
// end added for superEnterpriseyWonder v2.5
Run Code Online (Sandbox Code Playgroud)

每当我看到这个,我的血压升高,我必须花5分钟浏览SO来冷却.在我看来,他们不理解版本控制,如果我使用这种做法,源文件中的每一行都会是关于何时添加内容的评论.我正在考虑从我工作的文件中删除所有这些评论,但我想知道这只是我挑剔而且这些评论真的有些价值吗?

version-control comments

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

Sybase GUI客户端

有哪些适用于Windows的Sybase GUI客户端.

我已经尝试过DBVisualizer和RazorSQL的任何其他建议.免费首选

sybase

11
推荐指数
1
解决办法
3万
查看次数

当我用非零参数显式调用exit时,为什么我的Perl脚本返回零返回码?

我有一个调用另一个脚本的Perl脚本.Perl脚本应该传播脚本的返回代码,但似乎返回零到其调用者(Java应用程序)desipte显式调用exit $scriptReturnCode.

代码和输出如下(我意识到<=>可能/应该是,!=但这就是我所拥有的):

print "INFO: Calling ${scriptDirectory}/${script} ${args}"
$scriptReturnCode = system("${scriptDirectory}/${script} ${args}");

if ( $scriptReturnCode <=> 0 ) {
        print "ERROR: The script returned $scriptReturnCode\n";
        exit $scriptReturnCode;
} else {
        print "INFO: The script returned $scriptReturnCode.\n";
        exit 0;
}
Run Code Online (Sandbox Code Playgroud)

我从Java获得的输出是:

20/04/2010 14:40:01 - INFO: Calling /path/to/script/script.ksh arg1 arg2 
20/04/2010 14:40:01 - Could not find installer files <= this is from the script.ksh    
20/04/2010 14:40:01 - ERROR: The script returned 256
20/04/2010 14:40:01 - Command …
Run Code Online (Sandbox Code Playgroud)

perl return-value

8
推荐指数
1
解决办法
6641
查看次数

什么时候使用FTP好?

根据我的经验,我看到很多架构图,它们广泛使用FTP作为链接架构组件的媒介.

作为一个不做出架构决策但倾向于查看架构图的人,任何人都可以解释使用FTP的价值,适当的地方和将数据作为文件传输时是个好主意.

我知道通常遗留系统只需要以这种方式工作 - 尽管任何历史见解都会很有趣

我可以看到传输文件的吸引力(特别是如果那是需要转移的东西),因为它的简单性和熟悉性,并且如果推理超出这个范围就会感到奇怪.

编辑:感谢那些指出SFTP更受欢迎的人,但是我的问题比想要文件传输协议的建议更广泛.对困惑感到抱歉.

architecture ftp file-transfer

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

返回自动释放目标c中的错误吗?

我是目标c的新手,我试图了解如何/何时调用autorelease.我理解简单的用例:

- (void) foo {
    Bar *b = [[[Bar alloc] init] autorelease];
    [self doSomething:b];
  }
Run Code Online (Sandbox Code Playgroud)

下一个案例怎么样 - 这是一个错误,因为该对象将在离开makeBar范围后立即释放?

-(Bar*) makeBar
{
    return [[[Bar alloc] init] autorelease];
}
Run Code Online (Sandbox Code Playgroud)

如果来电者保留怎么办?

Bar *b = [[self makeBar] retain];
Run Code Online (Sandbox Code Playgroud)

谢谢,-Eric

memory-management objective-c autorelease

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

gdb控制台有哪些命令?

Xcode 4.所以我可以做一些事来打印一个变量.我还能做什么?

xcode gdb objective-c

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

如何将英语转换为Cron?

我做了一些搜索,但没有找到任何看起来有用的东西,但我想知道是否有人知道可以解析英语短语并将其翻译成cron字符串的东西(工具,lib等).

例如:Every Tuesday at 15:00转换为0 15 * * 2

看起来好像有很多陷阱,最好是从别人的工作中受益.你可以在一些不错的网站/应用程序中看到它,它可以从一个简单的短语中找出你的意思,而不是有一些可怕的用户界面.

提前致谢.

parsing nlp

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

无限期地睡觉

我想知道是否有一个声明,我可以用来让程序无限期地睡眠(可能使用睡眠功能?).(我显然正在等待一个信号,这个信号将在某个时间传递给这个过程,它会唤醒它)

c sleep

5
推荐指数
1
解决办法
4433
查看次数

在Java的Runtime.exec()运行的命令中评估环境变量

我有一个场景,我有一个Java"代理",可以在几个平台(特别是Windows,Solaris和AIX)上运行.我想通过在我执行的命令行中使用环境变量来分解文件系统结构的差异.

据我所知,没有办法让Runtime.exec()方法来解析/评估命令String(或字符串数​​组)中引用的任何环境变量.

我知道如果推动推进,我可以编写一些代码来预处理命令String(s)并手动解析环境变量(使用getEnv()etc).但是我想知道是否有一种更聪明的方法可以做到这一点,因为我确信我不是唯一想要这样做的人,而且我确信在"敲定"我自己的实现方面存在缺陷.

非常欢迎您的指导和建议.

编辑: 我想使用一些一致的表示法(如$ VAR和/或%VAR%)来引用命令字符串中的环境变量.不讨厌哪个.

编辑: 要清楚我希望能够执行如下命令:

perl $SCRIPT_ROOT/somePerlScript.pl args

在Windows和Unix主机上使用Runtime.exec().我在配置文件中指定了一个描述要运行的作业列表的命令,它必须能够跨平台工作,因此我认为环境变量可用于分解文件系统差异(/home/username/scriptsvs C:\foo\scripts).希望有助于澄清它.

谢谢.汤姆

java environment-variables

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