当前位置: 代码迷 >> C++ >> 有关char 有关问题
  详细解决方案

有关char 有关问题

热度:7943   发布时间:2013-02-26 00:00:00.0
有关char 问题
首先想问一下  char的具体作用。。在网上查的看不明白。。是用作字符串还是数组??
  

另外//
#include <stdio.h>
 int main(void)
 {
     char s[30];
     s="Smile!"
     printf("%s%s%s\n");
     printf("%s%s\n");
     printf("%s\n");
 return 0;
 }
 在这里这个是错误的。。



 正确的是这个#include <stdio.h>
 int main(void)
 {
     char s[30]="Smile!";
     printf("%s%s%s\n",s,s,s);
     printf("%s%s\n",s,s);
     printf("%s\n",s);
 return 0;
 } 


我在错误的那里修改成了  
#include <stdio.h>
 int main(void)
 {
     char s[40];
     s=printf("Smile!\n");
     printf("%s%s%s\n");
     printf("%s%s\n");
     printf("%s\n");
 return 0;
 }
    还是错误。。
后来看到了
s=printf("Smile!\n");
错误。。

又改成了
#include <stdio.h>
 int main(void)
 {
     char s[40];
     printf("Smile!\n",s);
     printf("%s%s%s\n",s,s,s);
     printf("%s%s\n",s,s);
     printf("%s\n",s);
 return 0;
 }
 结果是第一行正解  其他的都被毙了。。
我就是想问问  除了前面唯一正确的方法还有其他的没有,,
  

------解决方案--------------------------------------------------------
char是字符(单个)
char[]是字符数组,也就是字符串了

%c是单个字符
%s是字符串,可以传入字符数组,字符串指针
------解决方案--------------------------------------------------------
只有第一个程序是正确的,这是显然的。
printf()函数根据format(格式,% [ flags ] [ field_width ] [ . precision ] type
)给出的格式打印输出到STDOUT(标准输出)和其它参数中。格式中的%-type会被格式后跟随的实际参数替代。

补充一下,char[]为指向以'0'结尾的字符串的指针。


引用:
char是字符(单个)
char[]是字符数组,也就是字符串了

%c是单个字符
%s是字符串,可以传入字符数组,字符串指针
  相关解决方案