首页 新闻 会员 周边 捐助

字符串和字符指针咋区别这大啊

0
[已解决问题] 解决于 2012-04-13 21:25

#include<stdio.h>
#include<stdlib.h>

using namespace std;

int main()
{
 char *str;
 char *str1="hello world";   //char str1[]="hello world";  
 strcpy(str,str1);
 //strncpy(str,str1,2);
 //cout<<str1<<endl;
 printf("%c",*(str1+2));     //printf("%c",str1);
}

 

说明:用指针表示一点问题没有 ,换位字符串符号,竟然直接给我来个 P,晕死,str1+1的结果是Q,更不知道是怎么回事了,按理不应该啊;2. 当用str1[]时,strcpy为什么不可以? str1不是正表示 第一个字符的指针么???

爱的谜语的主页 爱的谜语 | 初学一级 | 园豆:187
提问于:2012-04-13 10:58
< >
分享
最佳答案
2

问题描述的很乱。

什么叫做一点问题没有?strcpy是拷贝操作,要求目标必须有足够的空间容纳拷贝进来的数据,而你的str只是一个指针,没有申请空间。

 

奖励园豆:5
zsounder | 老鸟四级 |园豆:2819 | 2012-04-13 12:09
其他回答(1)
-2

关注这个问题。。。

KivenRo | 园豆:1734 (小虾三级) | 2012-04-13 13:01

这问题没什么可关注的,基础没打牢。

支持(0) 反对(0) zsounder | 园豆:2819 (老鸟四级) | 2012-04-13 13:36

@Wang Hui: 确实没啥值得关注的~ 我弄错了

支持(0) 反对(0) 爱的谜语 | 园豆:187 (初学一级) | 2012-04-13 21:25

@爱的谜语: 笑 了

支持(0) 反对(0) Rollen Holt | 园豆:210 (菜鸟二级) | 2012-05-02 11:59
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册