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指向的地址不能改变,会不会是因为没有初始化?本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 1
悬赏问题
- ¥15 metadata提取的PDF元数据,如何转换为一个Excel
- ¥15 关于arduino编程toCharArray()函数的使用
- ¥100 vc++混合CEF采用CLR方式编译报错
- ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
- ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
- ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
- ¥50 如何openEuler 22.03上安装配置drbd
- ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
- ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
- ¥15 Windows11, backspace, enter, space键失灵