#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不是正表示 第一个字符的指针么???
问题描述的很乱。
什么叫做一点问题没有?strcpy是拷贝操作,要求目标必须有足够的空间容纳拷贝进来的数据,而你的str只是一个指针,没有申请空间。
关注这个问题。。。
这问题没什么可关注的,基础没打牢。
@Wang Hui: 确实没啥值得关注的~ 我弄错了
@爱的谜语: 笑 了