作者rg550 (杰克)
看板C_and_CPP
标题[问题] 关於指标的应用
时间Thu Jun 18 14:17:50 2009
我想写一个函式print(char *s1,int space)
功能是将输入的字串s1,使用print函式後
他可以在画面上空出space的格子数,在显示
字串。以下为我的程式码。
void print(char *s1,int space)
{
char *s2;
while(space)
{
s2++;
space--;
}
while(*s1)
{
*s2=*s1;
s2++;
s1++;
}
cout<<s2<<endl;
}
我发现这个程式,在执行时,会发生错误,错误
点大概发生在第二个回圈的*s2=*s1就会出错,
我的想法是,第一个回圈,将s2字串移动space後
,再第二个回圈之中,将s1放入,所以第二个回
圈,内容是把字串中的字元,一个一个的复制,
但是却在执行时会发生错误,请问这是什麽原因呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.84.27.29
1F:→ pico2k:十诫里的第五诫... 06/18 14:46
2F:推 ianfang:s2没有配置合法空间 06/18 15:52
3F:→ rg550:感谢前辈指点orz.. 06/18 16:40