[求助]c++指针问题
下面程序的主函数首先调用GETLINES输入若干行字符串到指针数组s中(字符串存储到申请的动态空间中,指针数组的元素指向这样的动态空间),然后调用DELLINES释放数组s中字符串占用的动态空间,其中GETLLINES释放数组s中字符串占用的动态空间,其中GETLINES合DELLINES只给出了原形:#include<iostream.h>
#include<string.h>
void GETLINES(char *p[],int&n);
void SHOWLINES(char *p[],int n)
{
for(int i=0;i<n;i++)cout<<p[i]<<endl;
}
void DELLINES(char *p[],int);
void main()
{
char *s[20];
int count;
GETLINES(s,count);
SHOWLINES(s,count);
DELLINES(s,count);
}
【要求】实现函数GETLINES合DELLINES。其中GETLINES从键盘输入字符串,每按一次回车算一个字符串,当输入的是空串或输入的字符串满20个时,输入结束。
第二题:
已知函数sort3的功能是重新安排作为实参的三个指针,例如执行主函数
void main()
{
int a=3,b=2,c=1;
int *s1=&a, * s2=&b,*a3=&c;
sort3(s1,s2,s3);
cout<<"//"<<*s1<<' '<<*s2<<' '<<*a3;
}
的输出是:1 2 3//2 1 3
【要求】实现函数sort3
【提示】函数的三个形参应定义为指针的引用。
谢谢大家~!