鱼C论坛

 找回密码
 立即注册
查看: 660|回复: 4

[已解决]指针直接存放字符串

[复制链接]
发表于 2020-4-9 10:22:22 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. char *a =“snhjsidjsd”;
复制代码


请问这样到底可不可以,不是说指针只是存放一个地址吗 屏幕截图(3).png
最佳答案
2020-4-9 12:06:43
  1. “snhjsidjsd”
复制代码

这就是一个地址
字符串就是一个地址

  1. #include <stdio.h>

  2. int main(void) {
  3.     printf("%p\n", "1234");
  4.     printf("%c\n", "abcd"[3]);
  5.     return 0;
  6. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-9 10:23:27 | 显示全部楼层
https://baijiahao.baidu.com/s?id=1604208649221500040&wfr=spider&for=pc
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-9 10:29:11 | 显示全部楼层
你得明白指针的作用是啥,指针是指向一个内存地址
或者说指针是一把钥匙,它能打开一幢房子,房子里面才是真正的字符串
你sizeof 指针看看,它返回的结果一定是一个int类型的数,这个数是一个地址,从这个地址开始,按顺序排放着一堆数据,这个数据整合起来就是“snhjsidjsd”
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-9 12:06:43 | 显示全部楼层    本楼为最佳答案   
  1. “snhjsidjsd”
复制代码

这就是一个地址
字符串就是一个地址

  1. #include <stdio.h>

  2. int main(void) {
  3.     printf("%p\n", "1234");
  4.     printf("%c\n", "abcd"[3]);
  5.     return 0;
  6. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-9 12:07:54 | 显示全部楼层
  1. #include <stdio.h>

  2. int main(void) {
  3.     char *num = "1234";
  4.     char *str = "abcd";
  5.     printf("%p\n", num);
  6.     printf("%c\n", str[3]);
  7.     return 0;
  8. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-1 14:59

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表