我叫赵怡彬 2016-10-05 05:07 采纳率: 100%
浏览 1242
已采纳

c语言指针字符串char*const p一些问题

1.使用char*const p是不是只能定义一个字符,而不能定义字符串,因为我在实验的时候发现如果定义一个字符串,printf("%s\n",p);显示不出来,而且我发现如果把%s改成%c也无法显示,但是既然定义的是字符,不应该%c才能显示吗?怎么倒过来了

  • 写回答

4条回答 默认 最新

  • 傅某人__ 2016-10-05 05:50
    关注

    printf用%c后面匹配的应该是char类型,并输出这个字符;printf用%s后面匹配的应该是指向字符串第一个字符的字符型指针,并输入整个字符串(从首字符到‘\0’)

    首先p是一个指向字符的指针,它是一个指针类型,而不是一个char类型,所以用%c是肯定不对的。
    另外用%s是可以输出的,显示不出来具体是指什么?这里const使p指向的地址不能改变,会不会是因为没有初始化?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?