黑马程序员技术交流社区

标题: 指针 [打印本页]

作者: su199325    时间: 2015-5-24 14:23
标题: 指针
假如int *s;那么*s=“hello”和s=“hello”有什么区别
作者: CornerFly    时间: 2015-5-24 15:04
S=“hello”是把字符‘h’的地址赋值给指针变量S ,*S = "hello"不太理解,按理说,是把hello赋值给S所指向的内存空间,但是C中只能用数组或指针来存储字符串呀
作者: 行知灬哒    时间: 2015-5-24 16:38
支持一下  指针挺绕的
作者: yuang4074    时间: 2015-5-25 20:48
首先两个写法都错误,s是指向int的指针变量;*s=“hello”,显然hello不是整型也不是字符型;s="hello"也会报错:“hello”相当于一个char数组 ,因而s不能指向char数组;你这样写编译就会有问题
作者: yuang4074    时间: 2015-5-25 20:49
CornerFly 发表于 2015-5-24 15:04
S=“hello”是把字符‘h’的地址赋值给指针变量S ,*S = "hello"不太理解,按理说,是把hello赋值给S所指向 ...

你理解完全错,因为s只是指向int型的指针变量
作者: yuang4074    时间: 2015-5-25 20:50
CornerFly 发表于 2015-5-24 15:04
S=“hello”是把字符‘h’的地址赋值给指针变量S ,*S = "hello"不太理解,按理说,是把hello赋值给S所指向 ...

你理解完全错,因为s只是指向int型的指针变量
作者: 李闯    时间: 2015-5-25 21:07
指针确实是一个难点
作者: 天是蓝色的    时间: 2015-5-25 21:10
感觉下面的大神说的很好,受教了
作者: 尹世伟    时间: 2015-5-25 21:10
今天刚看还没有学到
作者: 追随自然    时间: 2015-5-25 21:12
复习一下
作者: 张清华    时间: 2015-5-25 21:15
受教了,赞一个
作者: CornerFly    时间: 2015-5-26 10:08
yuang4074 发表于 2015-5-25 20:50
你理解完全错,因为s只是指向int型的指针变量

好吧,忽略了数据类型,好丑。。。。。
作者: 小龙女的萝卜    时间: 2015-5-26 11:03
虽然没看懂,但是感觉int类型传个字符串,有点别扭,支持下
作者: 秦卷卷    时间: 2015-5-27 10:48
指针最纠结了。
作者: Dariel    时间: 2015-5-29 09:17
题目有有问题吧!int类型的指针怎么可以存储字符串的地址呢?应该是:假如char *s;那么*s=“hello”和s=“hello”有什么区别




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2