字符串数组与指针的一些用法

学过C语言的都知道,字符串是一个很特别的存在。下面我们就从初始化和打印来了解下。

首先字符串是以ASIC码的形式存放于内存中的,而且字符串初始化是以数组或者指针的形式进行的。

首先对一个字符串进行初始化,可以参考如下代码:

void main()
{
    char str[]="abcdefg";
    char *str="abcdefg";
}

我们可以看下上面两种字符串的打印方式:

首先是第一种,单个打印字符串中某个元素,或者打印数组中的所有内容,代码如下

void main()
{
    char str[]="abcdefg";
    printf("str[0]=%c\n",str[0]);
    printf("str[0]=%d\n",str[0]);
    printf("&str[0]=0x%x\n",&str[0]);
    printf("&str=0x%x\n",&str);
    for(int i=0;i<sizeof(str)/sizeof(str[0]);i++)
    {
        printf("%c",str[i]);
    }
}
执行结果如下:

可以看到%c是打印单个字符,%d则把该字符对应的ASIC码打印出来,如果需要打印地址则在该数组元素前面加上取地址符&,而且字符串数组的地址即第0个数组的地址;

第二种,单个打印字符串中某个元素,或者打印数组中的所有内容,代码如下

void main()
{   char *str="abcdefg";
    printf("%s\n",str);
    printf("%c\n",*(str+1));
    printf("str=0x%x\n",str);
    printf("(str+0)=0x%x\n",(str+0));

}

执行结果如下:

可以看到打印方式为%s,,即可把该字符串全部进行打印,如果要打印某一位的字符串只需要取该地址,并且加上读取该地址的内容*即可。

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值