【发布时间】:2013-04-09 01:45:21
【问题描述】:
在 C 中,输出是我所期望的。在 Javascript 中,输出不是我所期望的。在 Javascript 中,十六进制以十进制而不是十六进制循环。
C:
#include<stdio.h>
int main(){
for(int i=0x1000;i<=0x109F;i++){
printf("%x\n",i);
}
return 0;
}
Javascript:
<script type="text/javascript">
for(var i=0x1000;i<=0x109F;i++){
document.write(i+"<br>");
}
</script>
【问题讨论】:
-
一个数字被存储为数字,你用来指定它的符号无关紧要。例如,如果您转储
0x10或020,您将威胁相同的值 (16),并且仅存储该值,该符号是一种约定,可以在某些情况下使某些数字更容易威胁。你需要的是格式化输出,正如@Doorknob 建议的那样,就像你在C 中使用printf("%x")所做的那样。您指定i=0x1000并不重要,拥有i=4096将导致相同的输出。 -
@ZER0 谢谢。您的 cmets 有帮助。
标签: javascript c++ c hex