指针作为函数参数
如果在类中声明一个构造函数,指针作为函数参数如下,那么函数退出后指针s消亡了,s所指向的空间是不是还在栈中?
strings(char *s)
{
......
}
[解决办法]
是,strings(char *s) 在调用的时候只是将char类型的指针传给函数,而指针在函数调用完还是在栈中的。
[解决办法]
s小时了。但是实参还在,所以你多虑了
内存也在
[解决办法]
s的副本消失了。
[解决办法]
函数:
strings(char* s)
{
...
}
调用:
1.
char* s="this is a test string.";
strings((char*)s);
2.
char[] s="this is a test string.";
strings(s);
3.
char* s = NULL;
s = new char[100];
strcpy(s, "this is a test string.");
strings(s);
诸位以为如何?