c++初学者求助,一道关于指针的题目

咕呱 2019-08-15 08:19:41
问题出在哪里第二张图,打圈的部分。为什么char类型的x,y要用指针,而int类型的x,y不需要用指针? 第二个,圈也是,char型数组为什么要用指针而int型不需要??? 谢谢大家了!!!
...全文
123 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
双杯献酒 2019-08-16
  • 打赏
  • 举报
回复
因为 "字符串" 是一个字符数组, 所以是指针。 也就是说, 在C++里, 123 (int) 是一个整体, 而 "123" 是 '1' '2' '3' '\0' 共4个 char组成的一个 char* 如果你要用一般数组, 那就只能 char s[] = "123";
starytx 2019-08-16
  • 打赏
  • 举报
回复
c风格的字符串一般就是通过一个字符指针(字符串的首字符的地址),加上一个值为0的字符表示结尾,就像给你一辫子蒜一样,只需递给你头蒜就行了
636f6c696e 2019-08-16
  • 打赏
  • 举报
回复
char*才是字符串,char只是个单个字符
咕呱 2019-08-16
  • 打赏
  • 举报
回复
引用 4 楼 Turn.的回复:
这本书叫什么名字
c++程序设计 思想与方法
咕呱 2019-08-16
  • 打赏
  • 举报
回复
谢谢大家啦,我明白啦
Turn. 2019-08-16
  • 打赏
  • 举报
回复
这本书叫什么名字
Italink 2019-08-15
  • 打赏
  • 举报
回复
你可以试着去掉*,还是比较字符串吗?char是字符,char[]是字符数组,函数传参会导致数组退化为指针,一个是比较整型(int),一个是比较字符串(char*),并没有什么用不用指针的区别,char*本就指向一个数组,除非你比较字符(char)
  • 打赏
  • 举报
回复
先吐槽一下函数名 函数的内容和函数名可以说没有关系。 因为int类型传递的是值,是一个值(一个参数一个值)。 char* 传递的是字符串,是多个字符,一个参数,对应着多个字符。是一串值。所以要用指针。

64,687

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧