首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列程序中的函数stropy2()实现字符串两次复制,即将t所指字符串复制两次到s所指内存空间中,合并形成一个新字符串。例如,若t所指字符串为:efgh,调用strcpy2后,s所指字符串为:efghefgh。请填空。 #include <stdi
下列程序中的函数stropy2()实现字符串两次复制,即将t所指字符串复制两次到s所指内存空间中,合并形成一个新字符串。例如,若t所指字符串为:efgh,调用strcpy2后,s所指字符串为:efghefgh。请填空。 #include <stdi
admin
2013-02-23
54
问题
下列程序中的函数stropy2()实现字符串两次复制,即将t所指字符串复制两次到s所指内存空间中,合并形成一个新字符串。例如,若t所指字符串为:efgh,调用strcpy2后,s所指字符串为:efghefgh。请填空。
#include <stdio.h>
#include <string.h>
void strcpy2(char *s,char *t)
{ char *p=t;
while(*s++=*t++);
s=【 】;
while(【 】=*p++);
}
main()
{ char str1[100]="abed",str2[]="efgh";
strcpy2(str1,str2); printf("%s\n",str1);
}
选项
答案
s-1或--s或s-- *s++
解析
在函数。strcpy2()中,首先将指针t保存到指针p中,然后进入第1个while()循环,其循环条件为*s++=*t++,其中“*”和“++”运算符的优先级相同,但他们的结合性为从右至左,而“=”运算符优先级比较低,所以原表达式等价于(*s++)=(*(t++)),即将t当前所指内容复制到s当前所指地址中,然后让s和t同时往后移动一位,整个表达式返回的是复制给s的值。所以,当t所指内容是字符串结束符’\0’,时,while循环结束,原先t所指的整个字符串也就复制到s所指的地址中去了。但是,while循环最后一次判断也会让s和t往后移动一位,即此时s指向了字符串结束符’\0’的后一位。所以第2次复制字符串之前,应先将s指针往回移动一位,故前一空应该填入s-1或其他等价形式。接下来的while循环实现第二次复制,照抄第1次的while循环就行,故后一空应填入*s++。
转载请注明原文地址:https://kaotiyun.com/show/mePp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列程序的输出结果是()。#include<stdio.h>main(){inta=0,i;for(i=1;i<5;i++){switch(i){case
在瀑布模型中,将软件开发划分为若干时期,而软件的可行性研究一般被属于______。
设有如下说明:typedefstruct{intn;charc;doublex;}STD;则以下选项:能正确定义结构体数组并赋初值的语句是()。
若要求定义具有10个血型元素的一维数组a,则以下定义语句中错误的是()。
有以下程序:main(){intx[8]={8,7,6,5,O,0},*s;s=x+3;printf("%d\n",s[2]);}执行后输出结果是()。
若有以下的说明和语句,则在执行for语句后,*(*(pt+1)+2)表示的数组元素是()。intt[3][3],*Pt[3],k;for(k=0;k<3;k++)pt[k]=&t[k][0];
在下列几种排序方法中,要求内存量最大的是______。
假设线性表的长度为n,则在最坏情况下,冒泡排序需要的比较次数为【】。
注释说明了程序的功能,它分为【】注释和功能性注释。
以下程序的功能是:从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩,用输入负数结束输入。main(){floatx[1000],sum=0,ave,a;intn=0,i;pri
随机试题
论述新课程改革的课程结构。
电压调节器作用是()。
记名提单()
在传染病的预防工作中,国家实行的制度是
《注册建造师执业工程规模标准》(试行)将公路工程划分的内容不包括()。
国家标准规定,六大常用水泥的初凝时间均不得短于()min。
根据下列资料,回答下列小题。2011年浙江省资质以上总承包和专业承包建筑业企业(下同)完成建筑业总产值14686亿元,比上年同期增长22.3%。全年浙江省建筑业企业签订合同额26197亿元,其中本年新签合同额16468亿元,分别增长28.4%和24.1
(2008年第29题)生物多样性是指一定范围内多种多样活的有机体(动物、植物、微生物)有规律地结合所构成稳定的生态综合体。______不是生物多样性所包括的内容。
数据库中有“商品”表如下:执行SQL命令:SELECT部门号,MIN(单价*数量)FROM商品GROUF,BY部门号;查询结果的记录数是()。
SubfieldsofLinguisticsTheoverlappinginterestsbetweenthefieldoflinguisticsandotherdisciplinescreateseveralcro
最新回复
(
0
)