标题:[讨论][求助]关于指向字符串的指针的问题...在线等答!
取消只看楼主
隆龙
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-11-22
 问题点数:0 回复次数:2 
[讨论][求助]关于指向字符串的指针的问题...在线等答!
把字符串的首地址赋予指向字符类型的指针变量。例如: char *pc;pc="c language";或用初始化赋值的方法写为: char *pc="C Language"; 这里应说明的是并不是把整个字符串装入指针变量, 而是把存放该字符串的字符数组的首地址装入指针变量
这是我们书上的一段说法....但为什么写程序如下
char *p="information";
printf("%s",p)
我看不大明白,因为P是个指针变量,它的值是个地址啊....在这里他应该是这个字符串第一个字母的地址啊...可为什么这段程序运行时输出的是整个字符串....我觉得应该输出第一个字母的地址啊.......
#include<stdio.h>
void main()
{char *p="information";
printf("%s",p);
}
但运行结果是information
搞得好混....哪位大哥解答一下!
搜索更多相关主题的帖子: 指针 字符 变量 char 
2005-11-22 11:49
隆龙
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-11-22
得分:0 

但是我认为P应该是个地址啊....只有*P才会输出以上结果....真搞混了...

以前的程序要输出指针指向的值时都要加*号啊?

比如说
a=100;
*p=&a
printf里面输出就只能用*p?

2005-11-22 12:00
隆龙
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-11-22
得分:0 

谢谢了...呵呵

2005-11-22 12:39



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-34620-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.091468 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved