A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© laotang013 中级黑马   /  2015-10-19 21:45  /  1155 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*字符串的特点*/
#include <stdio.h>
#include <string.h>
int main(){

    /*

1.后面必须有’\0’结尾.否则只算普通的字符数组.但’\0’不会输出,只表示字符串结束.
2.字符串输出占位用%s必须遇到\0.才能结束,否则会继续输出更高位地址值的字符.


    char arr[]="heima";
    char s[]="abc";//等效于:char s[]={'a','b','c','\0'};
    //没有定义长度,则后面初始化几个元素,长度为几.
    char s1[]={'a','b','c'};
    char ss[]="haha";
    char s3[3]="abc";//这个表示的是一个字符数组.因为长度不够,没法加'\0';
    char s4[4]={'a','b','c'};
    printf("s=%s,s1=%s,ss=%s,s4=%s\n",s,s1,ss,s4);
    printf("%lu\n",sizeof s);
     */


    /*

3.strlen函数用于计算一个字符串的长度(字符数量),使用必须引入<string.h>.
4. strlen不会计算\0.且碰到\0结束,但是sizeof不受\0影响,且长度会包含\0.

     */

    char s5[]="abc";
    int a=strlen(s5);
    int b=sizeof(s5);
    char s6[]="你好he\0llo";//中文字符==3个英文字符.
    int c=strlen(s6);
    int d=sizeof(s6);

    //printf("a=%d,b=%d\n",a,b);
    printf("c=%d,d=%d\n",c,d);

    return 0;

}

2 个回复

倒序浏览
一起加油~
回复 使用道具 举报

一起加油~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马