c语言指针的问题,高手来看看....
发布时间: 18:34:56
编辑:www.fx114.net 我要评论
本篇文章主要介绍了"c语言指针的问题,高手来看看....
10bbnut]",主要涉及到c语言指针的问题,高手来看看....
10bbnut]方面的内容,对于c语言指针的问题,高手来看看....
10bbnut]感兴趣的同学可以参考一下。
#include&&stdio.h&
void&strcpy(char&*s,char&*t);
int&main()
&&&char&*s;
&&&char&*t="hello&c";
&&&strcpy(s,t);&&//★★此步报错
&&&return&0;
//指针,将t中字符复制到s中
void&strcpy(char&*s,char&*t)
&&&whlie((*s++&=&*t++)&!=&'\0')
}char&*s&=&new&char[100];如楼上,或者:
char&s[20]这样定义成数组也行
因为你的程序没有给s这个指针分配指向的空间,所以strcpy时出错也就是说是因为没有给*s预先留空间,可以这样理解吗?哦,谢了怎么给分啊,呵呵,虽说少了点。。。。。确切的应该说没给指针s分配它指向的空间.
你说没给*s留空间不具体,因为*s只是一个空间,而这个问题要的是一个数组那么大的空间好像在右上方的位置有一个"管理",呵呵给你们平分了,多谢了。。。。char&*s;
char&*t="hello&c";
strcpy(s,t);&//★★此步报错
没有为指针s分配空间,就直接为其赋值,出错
char&*t="hello&c";
s&=&(char*)malloc(sizeof(char)&*&strlen(t)&+&1);&//&这样就好了,后面的1是为了放字符串结束符用的.
strcpy(s,t);&//★★此步报错#include&&stdio.h&
#include&&malloc.h&
void&strcpy(char&*s,char&*t);
int&getstrlen(char&*sTmp);
int&main()
&&&char&*s;
&&&char&*t="hello&c";
&&&int&n&=&getstrlen(t);
&&&s&=&(char*)calloc(n+1,sizeof(char));&&&&&
&&&strcpy(s,t);&&
&&&free(s);
&&&*s&=&NULL;
&&&return&0;
//指针,将t中字符复制到s中
void&strcpy(char&*s,char&*t)
&&&while((*s++&=&*t++)&!=&'\0')
int&getstrlen(char&*sTmp)
int&n&=&0;
while(*sTmp++&!=&'\0')
lz看看这个合不合你的心意
一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!
二、互相尊重,对自己的言论和行为负责。
本文标题:
本页链接: