C语言char单字符、字符串、字符数组(二)


//概论:C没有为字符串定义专门的变量类型,而是转它存储到char数组中
    
    //创建单个字符
    char a = 'A';
    a = 65;
    a = '\b';
    
    //TODO:创建字符字符&字符数组
    //方式1 字符数组
    char name[] = {'j','a','s','o','n'};
    char ch[] = {'a','b','c','d'};
    char myFirstC[] = {'a','d','c','b'};
    //字符内存字节大小
    int d = sizeof(name);
    int dd = sizeof name;
    
    //方式2
    //字符数组
    char myT[] = {"hello"};
    char myS[] = "hello"; //省略花括号
    int md = sizeof(myT);

    //_______备注:方式1 和 方式2 的输出结果是一样的,两种方法都是将一个或多个内存为一字节的字符初始化为数组;
    //当数组元素个数少于实际长度,出现值异常,如果大于实际长度则补 结束符 '\0'
    
    
    //方式3
    //字符串数组指针&单个字符,元素个数大于实际长度则超出的元素为 NULL
    char *ch3 = "worlddddddddddddddddddddddddddddd88888888888888888888888888888888888888888888888888"; //单个字符串
    char *ch33 = "world2"; //单个字符串

    char *ch4[4] = {"welcome", "," ,"doudou745","doudou745","doudou745","doudou745"};//字符指针数组
    char *ch5[] = {"welcome"};;
    int cd = sizeof(ch4);  // 32 字符数组指针在当前系统占用32个字节内存空间
    int cdd = sizeof(ch3); // 8 字符指针在当前系统占用8个字节内存空间
    int cddd = sizeof(ch33); // 8 字符指针在当前系统占用8个字节内存空间

    
    
    //字符数组取数组下标元素值
    char *aaa = ch4[0];
    printf("%s %s",ch3,ch4[2]);

    
    
    //strlen 字符串长度,忽略结束符 '\0'
    size_t aa = strlen(name);
    

    //转十六进制
    printf("%x %X %#x\n",31,31,31);

    
    
    //限制字符串输出
    const char *cc = "A good girl tell me that.....I V U";
    printf("%.11s\n%35s\n%36s\n%37s\n%-37s",cc,cc,cc,cc,cc);
    /*
     A good girl
      A good girl tell me that.....I V U
       A good girl tell me that.....I V U
        A good girl tell me that.....I V U
     A good girl tell me that.....I V U   (lldb)
     */

//无参初始化

char empty[10];

        empty[0] = 'd';

empty[1] = 'e';

gets(empty);






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值