Q╜先森 发表于 2017-6-22 14:07:03

c语言打印

本帖最后由 Q╜先森 于 2017-6-22 14:31 编辑

#include <stdio.h>

int main()
{
    char a;
    a="hello";
    printf("%c world",a);
    return 0;
}
只打印出world,为什么
后来我把char改string,c改s,打印出一空行再hello world,一脸懵

求道于盲 发表于 2017-6-22 14:56:41

a是一个字符
"hello"是一个字符数组
类型不一样
你的赋值是错误的

ba21 发表于 2017-6-22 15:10:39

c 没有string类型 只有char 难道是你自定义的

Q╜先森 发表于 2017-6-22 15:31:38

我在手机上写的这段代码,会不会因为这个

wuyuan2011woain 发表于 2017-6-22 15:39:33

        char a;
        a="hello";编译器不报错嘛

world.com 发表于 2017-6-22 20:45:00

#include <stdio.h>
#include<process.h>

int main()
{
    char *a;                            //要先定义一个char*类型的指针
    a="hello world !";            //然后指向"hello world"
    printf("%s",a);                  //再用printf("%s",)打印就可以了
    system("pause");
    return 0;
}
.

Q╜先森 发表于 2017-6-23 07:20:47

#include <stdio.h>
#include <stdlib.h>

int main()
{
    {
            char a;
            a = "h";
            printf("%c world",a);                        
    }
    system("PAUSE");      
    return 0;
}

现在还是错
我还不会指针

wuyuan2011woain 发表于 2017-6-23 08:37:36

Q╜先森 发表于 2017-6-23 07:20
现在还是错
我还不会指针

#include <stdio.h>
#include <stdlib.h>

int main()
{
        {
                char a;
                //a = 104;
                a = 'h';
                printf("%c world",a);                        
        }
        system("PAUSE");      
        return 0;
}

Q╜先森 发表于 2017-6-23 08:42:29

wuyuan2011woain 发表于 2017-6-23 08:37
#include
#include



求大神讲解

wuyuan2011woain 发表于 2017-6-23 09:04:49

Q╜先森 发表于 2017-6-23 08:42
求大神讲解

#include <stdio.h>
#include <stdlib.h>

int main()
{
        {
                char a;
                a = 'h';
                //你定义的是一个字符变量,只能存放字符,不能把字符串赋值给它,就比如你买了个瓶子是只能装水,但是你想把一块板砖装进去,肯定是不行的;
                //电脑也是原因的,内存存放数据时,你不能把一个不符合的数据,放在一个不适合他的内存中,这样内存会不认识而且可能跑到别的地方去,这样肯定不行的,
                //当然这里是编译器检查的语法错误
                printf("%c world",a);                        
        }
        system("PAUSE");      
        return 0;
}

world.com 发表于 2017-6-23 09:07:53

Q╜先森 发表于 2017-6-23 07:20
现在还是错
我还不会指针

//那定义数组形式的可以吗

#include <stdio.h>
#include<process.h>

int main()
{
        char a = { "hello world !"};       //定义一个char类型的数组
        printf("%s", a);                              //直接打印a
        system("pause");
        return 0;
}

Q╜先森 发表于 2017-6-23 10:43:16

字符和字符串有什么区别
还有
#include <stdio.h>
#include <stdlib.h>

int main()
{
    {
          char a;
          a = '100';
          printf ("hello %c",a);
    }
    system ("PAUSE");
    return 0;
}

为什么打印出hello 0

wuyuan2011woain 发表于 2017-6-23 22:06:10

Q╜先森 发表于 2017-6-23 10:43
字符和字符串有什么区别
还有



http://blog.sina.com.cn/s/blog_6a9d45ff0100n5jj.html
页: [1]
查看完整版本: c语言打印