首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的工程test31_3。此工程包含一个test31_3.cpp,其中定义了可以动态分配的字符串类,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。 (1)定义类tstring的私有数据成员length和p,它们分
使用VC6打开考生文件夹下的工程test31_3。此工程包含一个test31_3.cpp,其中定义了可以动态分配的字符串类,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。 (1)定义类tstring的私有数据成员length和p,它们分
admin
2010-02-08
15
问题
使用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全国计算机二级
相关试题推荐
论述1927—1949年中共土改各阶段政策文件及改革内容和影响。(复旦大学2015年历史学综合真题)
简述统计假设检验中两类错误的定义及其关系。
如果依据统计方法的功能进行分类的话,统计学可以分为()
有一组数据4、5、8、7、6、6的方差和标准差分别是()
夸美纽斯主张国家既对教育具有不可推卸的责任,也有管理教育的最高权力。下列对夸美纽斯此方面的主张表述错误的是
下列哪项不是具体运算时期儿童的特征?()
“要尽量多地要求一个人,也要尽可能多地尊重一个人”所体现的德育原则是()
认为学校教育的功能就是再生产出占主导地位的社会政治意识形态、文化关系和经济结构的是
下列关于学校教育的说法,错误的是
随机试题
甲企业采用融资租赁方式租人设备一台,设备尚可使用5年,租赁期4年,租期届满时,租赁资产退还给承租人。租赁设备的公允价值为210万元,最低租赁付款额的现值为200万元,承租人采用直线法计提折旧,则该项融资租人固定资产每年计提的折旧额为()
编写一个程序,统计AX寄存器中1的个数,结果放在CL寄存器中(假设AX=0FF37H)。
导致女子胞生理功能失调病机,主要是指
抗菌谱最窄的药物是
某6个月女婴,母奶喂养未添加辅食,面色苍黄、嗜睡,诊断巨幼细胞性贫血,因缺乏
40岁女性,Graves病患者,应用甲琉咪唑治疗,1个月后症状缓解,但甲状腺肿及突眼加重,此时最适当的治疗措施是
养老金制度改革已经______,路径之一是多元化的基金补充机制:其次是建立灵活的退休机制。应尽快实现城镇职工基础养老金的全国统筹,科学制定方案______延迟退休政策,同时深入调整个人账户制度的管理模式,并进行实际的投资运营。填入画横线部分最恰当的一项是:
某中学要买50个足球,现在有甲、乙、丙三个商店可以选择。三个商店的足球的价格都是25元,但商店的优惠办法不同。甲店:满10个足球免费赠送2个,不足10个不赠送。乙店:一次性买20个以上个足球则每个足球优惠5元。丙店:购物每满100元,返还现金20元。若只能
“对任意给定的ε∈(0,1),总存在正整数N,当n>N时,恒有|xn-a|≤2ε”是数列{xn}收敛于a的
A、They’reclosefriends.B、Shewantedtoaskforleave.C、Shewasterribly’ill.D、Shegreetedhim.BWhydidMaryringMr.Thomp
最新回复
(
0
)