首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的工程test31_3。此工程包含一个test31_3.cpp,其中定义了可以动态分配的字符串类,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。 (1)定义类tstring的私有数据成员length和p,它们分
使用VC6打开考生文件夹下的工程test31_3。此工程包含一个test31_3.cpp,其中定义了可以动态分配的字符串类,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。 (1)定义类tstring的私有数据成员length和p,它们分
admin
2010-02-08
17
问题
使用VC6打开考生文件夹下的工程test31_3。此工程包含一个test31_3.cpp,其中定义了可以动态分配的字符串类,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。
(1)定义类tstring的私有数据成员length和p,它们分别是血型的数据和字符型的指针,其中length表示一个字符串的长度。请在注释“//**1**”之后添加适当的语句。
(2)完成类tstring的构造函数,使length等于字符串m的长度,并申请由指针p指向的length长的字符型空间,将m所指的字符串复制到该空间。请在注释“//**2**”之后添加适当的语句。
(3)完成类tstring的成员函数strcopy(tstringn)的定义,该函数将对象n的值(包括字符串长度和字符串本身)复制给调用该函数的对象(对象n的字符串长度任意)。请在注释“//**3**”之后添加适当的语句。
(4)完成类tstring的友元函数strlink(tstring m,tstring n)的定义,该函数将可动态分配的字符串类对象m和n的字符串成员连接在一起(对象m和n的字符串长度任意),并返回该串。请在注释“//**4**”之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
程序输出结果如下:
hello the world!
源程序文件test31_3.cpp清单如下:
#include<iostream.h>
#include<conio.h>
#include <string.h>
class tstring
{
public:
//** 1 **
tstring(char *m)
{
//** 2 **
strcpy(p,m);
}
void strcopy(tstring n);
friend char *strlink(tstring m,tstring n);
};
void tstring::strcopy(tstring n)
{
//** 3 **
char *q;
q=new char[length];
strcpy(q,tstring::p);
q=strcat(tstring::p,n.p);
tstring::p=q;
tstring::length=strlen(tstring::p);
}
char *strlink(tstring m, tstring n)
{
int length=strlen(m.p)+strlen(n.p);
char *p;
//** 4 **
strcpy(p,m.p);
p=strcat(p,n.p);
return p;
}
void main ( )
{
tstring a("hello ");
tstring b("the world");
tstring c("!");
a.strcopy(b);
cout<<strlink(a,c)<<end1;
}
选项
答案
(1) int length; char *p; (2) length=strlen(m); p=new char[length]; (3) int length=strlen(tstung::p)+strlen(n.p); (4) p=new char[length];
解析
本题是对类与字符串常用函数的综合考查。字符串常用函数strcpy、strcat和strlen的调用格式和调用限制是需要熟练掌握的。程序中通过申请新的空间和改变指针指向解决了原有字符串函数strcpy的目标字符串空间必须足够大的问题。根据实际情况利用以有类建立新类的能力是需要培养的。
转载请注明原文地址:https://jikaoti.com/ti/DFkiFFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
要求被试在识记材料后,尽量将识记的全部项目再现出来,以此确定感觉记忆的保存量,称为()。
卡方检验要求每个单元格的理论次数不得小于5,如果小于5应该采用以下的哪些处理办法?()
如果依据统计方法的功能进行分类的话,统计学可以分为()
一位教育学教师让每个学生报告他们用于准备考试的时间和考试时答错的题目数:忽略样本容量的问题,解释两种相关系数的大小为何有差异,在上述数据中,你认为哪种更准确地反映了数据的关系?
下列哪种数据才可以运用卡方检验进行统计分析?()
已知某次学业成就测验的平均分数是80,标准差为4。如果某考生得分为92,则该分数转换为标准分后是()
下列作品不是苏霍姆林斯基的是
随机试题
下列四句中,属于宾语前置的是()
患者,男性,65岁,因腹痛3月余入院,入院查体:ECOG评分1级,双颈可及多个肿大淋巴结,心肺无异常,腹软,肝肋下5指可及,脾肋下3指可及,移动性浊音阴性。B超检查示腹膜后多发淋巴结肿大,肝脏多发性占位病变,结合病史考虑转移瘤。血清LDH正常。颈淋巴结穿刺
【2007年第29题】如图3—521与图3—522仅荷载不同,则关于A点与B点的竖向变形数值(fA和fB)关系,下列何项正确?
根据《建设工程安全生产管理条例》,各有关单位安全生产责任说法正确的有()。
某企业编制“现金预算”,预计6月初短期借款为100万元,月利率为1%,该企业不存在长期负债,预计6月现金余缺为一50万元。现金不足时,通过银行借款解决(利率不变),借款额为1万元的整数倍,6月末现金余额要求不低于10万元。假设企业每月支付一次利息,借款在
提出最近发展区理论的心理学家是______。
阅读材料,回答下列问题。2019年5月,全国12358价格监管平台受理价格举报、投诉、咨询共计37576件,同比下降40.70%,环比下降9.31%。其中,价格举报4192件,环比下降19.06%;价格投诉2059件,环比下
Thedualbankingsystem______.
Secondhandsmokeisaccountablefor42,000deathsannuallytononsmokersintheUnitedStates,includingnearly900infants,acc
Ifyou’velivedforlonginNewYorkCity,chancesareyou’velivedinseveraldifferentplaces.Onthemapofwherewelivenow
最新回复
(
0
)