请考虑以下代码.
int main(void) {
char * test = "abcdefghijklmnopqrstuvwxyz";
test[5] = 'x';
printf("%s\n", test);
return EXIT_SUCCESS;
}
在我看来,这应该打印abcdexghij.但是,它只是终止而不打印任何东西.
int main(void) {
char * test = "abcdefghijklmnopqrstuvwxyz";
printf("%s\n", test);
return EXIT_SUCCESS;
}
然而,这工作得很好,所以我误解了操纵C字符串或其他东西的概念吗?如果它很重要,我正在运行Mac OS X 10.6,它是我正在编译的32位二进制文件.
来自文档:"这个插件提供了从Maven 2中运行Ant任务的能力."
我是否需要安装Ant才能运行ant任务,或者maven插件是否已包含Ant?谢谢.
我正在尝试记录TestKit TestProbe 收到的所有消息,这被证明有点困难.我知道文档中的Actor Logging部分,它说应该将该debug.receive选项与LogginReceive块结合使用.然而,当我无法控制演员的实现时,这不起作用.
我唯一的想法是继承akka.testkit.TestActor使用a LoggingReceive和子类TestKit来使它创建我的TestActor子类的实例,但是这不起作用,因为大多数功能都是akka命名空间的私有(并且有充分的理由,我想).
我已经使用我选择的约束求解器进行了练习来解决斑马拼图,我尝试使用Prolog clpfd库.
我知道在Prolog中还有其他更惯用的方法可以解决这个问题,但这个问题是关于clpfd包的!
所以我想解决的难题的具体变化(假设有很多)是这个:
有五个房子
我尝试用以下方法解决它:
房屋可以具有的每个属性被建模为变量,例如"英国","狗","绿色"等.属性可以取1至5的值,具体取决于它们出现的房屋,例如,如果变量"狗"取值3,狗住在第三宫.
这种方法可以很容易地模拟邻居约束,如下所示:
def neighbor(X, Y) :-
(X #= Y-1) #\/ (X #= Y+1).
Run Code Online (Sandbox Code Playgroud)
但不知何故,该clpfd软件包不会产生解决方案,即使(IMO)问题已正确建模(我使用与Choco约束求解器完全相同的模型,结果是正确的).
这是完整的代码:
:- use_module(library(clpfd)).
neighbor(X, Y) :-
(X #= (Y - 1)) #\/ (X #= (Y + 1)).
solve([British, Swedish, Danish, Norwegian, German], Fish) :-
Nationalities = [British, Swedish, Danish, Norwegian, German],
Colors = [Red, Green, Blue, …Run Code Online (Sandbox Code Playgroud) constraints prolog constraint-programming clpfd zebra-puzzle
我很难搞清楚Fletcher校验和算法的32位变体的哪个实现是正确的.Wikipedia提供以下优化实现:
uint32_t fletcher32( uint16_t const *data, size_t words ) {
uint32_t sum1 = 0xffff, sum2 = 0xffff;
size_t tlen;
while (words) {
tlen = words >= 359 ? 359 : words;
words -= tlen;
do {
sum2 += sum1 += *data++;
} while (--tlen);
sum1 = (sum1 & 0xffff) + (sum1 >> 16);
sum2 = (sum2 & 0xffff) + (sum2 >> 16);
}
/* Second reduction step to reduce sums to 16 bits */
sum1 = (sum1 & …Run Code Online (Sandbox Code Playgroud) 当使用recv通过套接字接收数据时,我注意到了:
char buffer[4]; memset(buffer, 0, 4); recv(socket, buffer, 4, 0);
我收到
mesgx
"mesg"是我发送的内容,附加了一些随机字符.
如果我使用
char * method = (char *) malloc(4); memset(buffer, 0, 4); recv(socket, buffer, 4, 0);
相反,我收到了
MESG
所以我的字符串中没有附加的随机内容.我想出如果我使用char [5]而不是它也可以,但我真的不明白为什么.malloc(4)真的分配了5个字节,第五个是NUL吗?
我目前正在检测用户的IPv4地址并在v4中使用IP块.但是我想捕获IPv6并且也有这样的阻止列表,所以问题是:将IPv6作为IPv4或PHP中的不同之处是否相同?我只是不确定每个设备是否都有IPv4和IPv6,或者它是否是其中之一,系统会自动检测它是什么格式并存储它?
我已经开始使用Xcode 4了,我对一些"功能"特别恼火,特别是那些似乎没有多大意义的语义警告,例如:
http://coding-journal.com/wp-content/uploads/2011/08/Screen-Shot-2011-08-07-at-8.50.46-PM.png
在第640行,您可以看到一个语义问题,说我将不兼容的指针类型传递给参数NSString *,这是完全错误的,因为NSTabViewItems的签名initWithIdentifier:是:
- (id)initWithIdentifier:(id)identifier
Run Code Online (Sandbox Code Playgroud)
我的猜测是Xcode认为我正在调用initWithIdentifer:其他一些对象,因为当我使用Cmd+Click该方法时,它给了我三个选项:
http://coding-journal.com/wp-content/uploads/2011/08/Screen-Shot-2011-08-07-at-8.50.24-PM.png
第一个来自NSTableColumn,有签名
- (id)initWithIdentifier:(NSString *)identifier;
Run Code Online (Sandbox Code Playgroud)
所以我的问题是,在这种情况下我该怎么做?我喜欢我的代码没有警告,但是当使用Xcode 4时似乎不可能:(
Chai,matchers是否与rspecs平等=~(这意味着所有元素,但顺序无关紧要).
[1, 2, 3].should =~ [2, 1, 3]
Run Code Online (Sandbox Code Playgroud)
[1, 2, 3].should =~ [1, 2]
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个表单元素并排创建的表单,以及它们的标签(与相应输入元素的开头对齐),如下所示:
Label Label2
+----------------+ +-------+
+----------------+ +-------+
Run Code Online (Sandbox Code Playgroud)
以下内容无法正常工作,因为"Label2"与输入元素略有不对齐:
<div class="controls controls-row">
<label class="span9"><span>Label</span></label>
<label class="span2"><span>Label2</span></label>
</div>
<div class="controls controls-row">
<input type="text" class="span9" />
<input type="text" class="span2" />
</div>
Run Code Online (Sandbox Code Playgroud)
我使用这个workaround-ish结构让它工作:
<div class="controls controls-row">
<div class="span9">
<label><span>Label</span></label>
</div>
<div class="span2">
<label><span>Label2</span></label>
</div>
</div>
<div class="controls controls-row">
<div class="span9">
<input type="text" class="span12" />
</div>
<div class="span2">
<input type="text" class="span12" />
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
这可能是一个错误吗?因为在Twitter Bootstrap页面上它说:
对于匹配相同大小的网格列的输入,请使用.span1到.span12.
c ×3
akka ×1
algorithm ×1
ant ×1
c-strings ×1
chai ×1
checksum ×1
clpfd ×1
constraints ×1
correctness ×1
css ×1
cstring ×1
forms ×1
html ×1
ip-address ×1
ipv6 ×1
java ×1
javascript ×1
malloc ×1
maven ×1
memset ×1
mocha.js ×1
php ×1
prolog ×1
scala ×1
testing ×1
testkit ×1
xcode4 ×1
zebra-puzzle ×1