在c中添加笑脸

在c中添加笑脸,c,ubuntu,C,Ubuntu,我正在尝试使用C打印笑脸。我的程序是 #include <stdio.h> int main() { int x; char i=1; for(x=1;x<=800;x++) { printf(" %c ", i); if(x==800) printf("\n"); if(x==800) break; } } #包括 int main() { in

我正在尝试使用C打印笑脸。我的程序是

#include <stdio.h>

int main()
{
    int x;
    char i=1;
    for(x=1;x<=800;x++) 
    {
        printf(" %c ", i); 
        if(x==800)
        printf("\n"); 
        if(x==800)
        break;

    }
}
#包括
int main()
{
int x;
字符i=1;

对于(x=1;x如果要输出笑脸,则不能使用ascii字符。 再一次,看看那个ascii人,看看完整的可用字符集

但是,如果终端支持,您可以使用编码。 下面的代码片段在我的终端上打印一张带墨镜的笑脸:

#include <stdio.h>

int main()
{
 char s[] = { 0xf0, 0x9f, 0x98, 0x8e, 0};

 printf("%s\n", s);
}

根据他报告
C/C++/Java
源代码的页面,您正在打印字符i=1
printf(“%C”,i);
,对应于头的开头(soh),这是一个不可打印的字符(参见man ascii),为什么
y=x
如果(y==800)
?直接使用
if(x==800){printf break;}
@terence hill:解决方案???解决方案取决于您要打印的字符。您可以从ascii手册页中看到可打印字符。但是,您的代码不会打印笑脸,而只是打印同一字符的一行,您要打印一行笑脸还是在终端上打印组成笑脸的一组字符?
printf("\u263A\n");