我的C编译器在对unsigned值使用一元减号时给出了一个警告,所以我用从0减去的方法修正了警告。
现在,我想知道当前的代码是否等同于原来的代码:
uint32_t a, b; // assume b is initialized and non-zero
a = -b % b; // old code
a = (0-b) % b; // current code
我的问题是:对于相同的b值,两行代码对于a都会产生相同的结果。
下面是我的子进程调用:
def myrun(cmd):
p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
stdout = []
while True:
line = p.stdout.readline()
stdout.append(line)
print line,
if line == '' and p.poll() != None:
break
return ''.j