String str = new String(“abc”),“abc”在内存中是怎么分配的()。
第1题:
把字符串函数:string(3,"abc")的结果为( )
A.aaa
B.bbb
C.ccc
D.abc
第2题:
下面程序的输出结果为______。 #include<string.h> main() { charP[17]="abc"="ABC".STR[50]="xyz"; strcpy(str,strcat(p1,p2)); printf(%s,str); }
A.xyzabcABC
B.abcABC
C.xyzabc
D.xyzABC
第3题:
下面程序的输出结果是 #include<stdio.h> #include<string.h> main() { char *pl="abc",*p2="ABC",str[50]="xyz"; strcpy(str+2,strcat(p1,p2)); printf("%s\n",str);}
A.xyzabcABC
B.zabcABC
C.xyabcABC
D.yzabcABC
第4题:
以下程序中函数scmp功能是返回形参指针s1和s2所指字符串中较小字符串的首地址。#includ<string. h>char *scmp(char *s1,char *s2){ if(strcmp(s1,s2)<0) return(s1); else return(s2);}main(){ int i;char string[20],str[3][20]; for(i=0;i<3;i++) gets(str[i]); strcpy(string,scmp(str[0],str[1])); //库函数 strcpy 对字符串进行复制 strcpy(string,scmp(stfing,str[2])); puts(string); }若运行时依次输入: abed、abba 和abc三个字符串,则输出结果为( )。
A.abed
B.abba
C.abc
D.abca
第5题:
阅读下列程序说明和C++程序,把应填入其中(n)处的字句,写对应栏内。
【说明】
下面的程序实现了类String的构造函数、析构函数和赋值函数。
已知类String的原型为:
class String
{
public:
String(coust char * str = NULL); //普通构造函数
String( const String &other); //拷贝构造函数
~String(void); //析构函数
String & perate =(const String &other); //赋值函数
private:
char * m_data; // 用于保存字符串
};
//String 的析构函数
String:: ~String (void)
{
(1);
}
//String 的普通构造函数
String: :String( const char * str)
{
if (2)
{
m_data = new char[1];
*m_data = '\0';
}
else
{
int length = strlen(str);
m_data = new ehar[ length + 1 ];
strepy(m_data, str);
}
}
//拷贝的构造函数
String:: String( const String &other)
{ int length = strlen(other. m_data);
m_data = new char[ length + 1 ];
strepy(m_data, other, m_data); //赋值函数
String & String::operate = (eonst String &other) //
{
if (3)
return * this;
delete [] m_clara; //释放原有的内存资源
int length = strlen( other, m_data);
m_data = new chart length + 1 ];
(4);
return (5);
}
第6题:
已知String str=new String ("Luck");,则下列关于str的操作中不合法的是( )。
A.String s=str. toUpperCase()
B.int i=Str. length;
C.char s=str. charAt(2);
D.String s="Good" +str;
第7题:
下列选项中属于字符串常量的是( )。
A.·abc·
B.”abc”
C.[abc]
D.(abc)
第8题:
下列哪个语句是声明一个含有10个String对象的数组( )?
A.char str[];
B.char str[][];
C.String str[]=new String[10];
D.String str[10];
第9题:
以下程序十函数scmp的功能是返回形参指针s1和s2所指字符串中较小字符串的首地址: #include <stdio.h> #include <string.h> char *scrap(char *s1,char *s2) { if(strcmp(s1,s2)<0) return(s1); else return(s2); } main() { int i; char string[20], str[3][20]; for(i=0;i<3;i++) gets(str[i]); strcpy(string,scmp(str [0],str[1]));/*库函数strcpy对宁符中进行复制*/ strcpy(string,scmp(string,str[2])); printf("%s\n",string); } 若运行时依次输入:abcd、4bba和abc三个宁符市,则输出结果为
A.abcd
B.abba
C.abc
D.abca
第10题:
下面代码的运行结果是( )。 public class ConcatTest { public static void main (String[ ] args) { String str1 = "abc"; String str2 = "ABC"; String str3 = str1. coneat(str2); System. out. println(str3); } }
A.abc
B.ABC
C.abcABC
D.ABCabc