为您找到"
printf("%s\n",str)什么意思
"相关结果约100,000,000个
这是因为字符串是以‘\0'做为结束标志的。在内存中,比如字符串,“abc",实际上是四个字节的空间abc'\0'。在你的程序中:while((s[i]=getchar())!='\n')i++;s[i]='\0';前面的while只是得到了字符串的字符,而没有结束标志。如果没有最后一句s[i]='\0';你的字符就不能正确结束...
参数从右到左入栈导致先执行了 strcat 再执行 strlen 的原因?
首先,C语言语句printf("%s\r\n",p);表示以字符串的形式输出变量p的内容,然后再输出回车和换行。其次需要说明的是C语言中,printf()函数可以一多种形式来输出各种常量和变量的内容,当然可以将" \r"和"\n"等转义字符输出。最后,简单说明一下,一些ASCII码的控制字符或可现实字符都可以一转义字符...
s[10]="abcd"; 这个写法不对 你这么写,它认为s[10]是 数组s的 第10个元素 不能赋值一个字符串。你应该这么写 char s[10]= "abcd" ; printf("%s\n", s); 在定义数组的时候直接赋值,这样是可以的。
以%s格式输出字符串时,要的就是地址,如果用*s,则只输出一个字符
“%s\n”,%s 说明后面是字符串地址格式,可以是字符串指针,或者是字符数组首地址,\n 如:char szTemp[100]="123124";char *pTmp ="12345"printf("%s\n",szTemp); //123124 printf("%s\n",pTmp ); //12345
这是因为循环条件造成的,你可以理清一下思路,就按照原来的运行结果:0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 你的条件是"x<=1.0",意思是小于或等于1.0,程序一运行到小于1.0的时候就会停止,因为条件是可选的,不一定要等于才会停止,就说明没有下一次累计的循环出现了,把条件改...
printf("%s\n",a);就是把a(因该是数组)按照字符串形式输出出来,没有问题。%c 是字符,%f是浮点,%d 是十进制
首先是for循环,指针指向数组名,也就是首地址, 然后输出是%s,也就是整个字符串,即ABCD 然后指针p加2移动到C的位置,然后又是输出字符串,这是因为在C的位置,只能输出CD,然后p又加2超出范围, 所以结果就是ABCDCD
例子:includeint main(void){ int m = 0;static int n;int a = 5, b = 6, c = 7, d = 8;int k = ((m = a>b) && (n = c>d))printf("k = %d, m = %d, n = %d\n", k, m, n);return 0;} 输出结果为:k = 0, m = 0, n = 0;当变量用static修饰,...