char* a="HELLO WORLD";
IF的 'H' ADDRESS为0x01,则printf的与%s打印到d,但如果相同的代码被写入与手动打印例程C,C++最基本的双引号
while(*a!=NULL) {printf("%c",n[a]);n++;}
此打印几个字符.. 但
printf("%s",a);
打印它完美。
while(*a++) printf("%c", *(a-1)); or
for(;*a++;)printf("%c", *(a-1));
虽然工作,但我不想解决方案,但这一过程的机制..
所以来到我脑海中的问题是
的printf是否会从一些寄存器中的字符串的长度(或任何存储单元) 或者执行字符检查..然后打印...
我可能有一些代码错误吧...如果ü可以忽略他们... – user409640 2010-08-03 12:53:01
我想你可能就是。 – Lazarus 2010-08-03 12:54:28
什么是n?请提供完整的代码示例。 – 2010-08-03 12:55:23