资源描述
C++笔试题(二十四)
1. 以下三条输出语句分别输出什么?[C易]r(Y3
char str1[] = "abc";r92
char str2[] = "abc";!U{T
const char str3[] = "abc"; k
const char str4[] = "abc"; [EE#+T
const char* str5 = "abc";Es>T
const char* str6 = "abc";Dl,{e#
cout << boolalpha << ( str1==str2 ) << endl; // 输出什么?falseM6ri]
cout << boolalpha << ( str3==str4 ) << endl; // 输出什么?false
cout << boolalpha << ( str5==str6 ) << endl; // 输出什么?true
©内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 Z?R=/f
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 iEHsO;
2. 非C++内建型别 A 和 B,在哪几种情况下B能隐式转化为A?[C++中等]
答:
a. class B : public A { ……} // B公有继承自A,可以是间接继承的oh?
b. class B { operator A( ); } // B实现了隐式转化为A的转化@U
c. class A { A( const B& ); } // A实现了non-explicit的参数为B(可以有其他带默认值的参数)构造函数O>0&H
d. A& operator= ( const A& ); // 赋值操作,虽不是正宗的隐式类型转换,但也可以勉强算一个p
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 :O
3. 以下代码中的两个sizeof用法有问题吗?[C易]<
void UpperCase( char str[] ) // 将 str 中的小写字母转换成大写字母%tNg2O
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 y"
for( size_t i=0; i<sizeof(str)/sizeof(str[0]); ++i )
if( 'a'<=str[i] && str[i]<='z' )nqlYV2
str[i] -= ('a'-'A' );\m
}©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 9>61x
char str[] = "aBcDe";-Er
cout << "str字符长度为: " << sizeof(str)/sizeof(str[0]) << endl;|,A1u[
UpperCase( str );'
cout << str << endl;Y!PQM
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 Q|1p
4. 以下代码有什么问题?[C难]UrO
应该用 void char2Hex( unsigned char c )
void char2Hex( char c ) // 将字符以16进制表示Hb
{
char ch = c/0x10 + '0'; if( ch > '9' ) ch += ('A'-'9'-1);~3+C5B
char cl = c%0x10 + '0'; if( cl > '9' ) cl += ('A'-'9'-1);LEf8
cout << ch << cl << ' ';=4!6
}
char str[] = "I love 中国";
for( size_t i=0; i<strlen(str); ++I )
char2Hex( str[i] );
cout << endl;
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 ("t/
5. 以下代码有什么问题?[C++易]+k7k{
struct TesthwOe=i
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 e
Test( int ) {}@X({Y
Test() {}Q}c
void fun() {}j0
};X
void main( void )o~Of-
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 RJ=m[k
Test a(1);Xa
a.fun();vser*
Test b();)_.U
b.fun();3
}©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 L
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 ^X[kau
6. 以下代码有什么问题?[C++易]@s]#_
cout << (true?1:"1") << endl;{
//返回类型不匹配(一个int, 一个 char*)
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 oy})Ff
7. 以下代码能够编译通过吗,为什么?[C++易]+mdJ3}
unsigned int const size1 = 2;l
char str1[ size1 ];ME
unsigned int temp = 0;zIH
cin >> temp;*;f]#
unsigned int const size2 = temp;
char str2[ size2 ];l!a
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 NAB1o'
8. 以下代码中的输出语句输出0吗,为什么?[C++易]*tMa
struct CLS02
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 S64r
int m_i;c3
CLS( int i ) : m_i(i) {}vMo
CLS()ATO&K
{!x.
CLS(0); //这里其实是定义了另一个CLS变量
}.lo
};N K}D`
CLS obj;tZ'S
cout << obj.m_i << endl;{&Hm
9. C++中的空类,默认产生哪些类成员函数?[C++易]0Fk;Wc
答:©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 +"5hZ
class Emptyn?Y#
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 ??"8
public:b3-%@<
Empty(); // 缺省构造函数y?).r
Empty( const Empty& ); // 拷贝构造函数wYLd$
~Empty(); // 析构函数o$=a
Empty& operator=( const Empty& ); // 赋值运算符Z
Empty* operator&(); // 取址运算符26X
const Empty* operator&() const; // 取址运算符 constEw'H9
};q4iy
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 ~
10. 以下两条输出语句分别输出什么?[C++难]
float a = 1.0f;
cout << (int)a << endl;
cout << (int&)a << endl;
cout << boolalpha << ( (int)a == (int&)a ) << endl; // 输出什么?!
float b = 0.0f;
cout << (int)b << endl;
cout << (int&)b << endl;
cout << boolalpha << ( (int)b == (int&)b ) << endl; // 输出什么?
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 eA]6hO
11. 以下反向遍历array数组的方法有什么错误?[STL易]Il
vector array;wk6aX
array.push_back( 1 );X:g|+R
array.push_back( 2 );">b
array.push_back( 3 );K
// i永远大于0
for( vector::size_type i=array.size()-1; i>=0; --i ) // 反向遍历array数组-*H6
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 n1I%J
cout << array[i] << endl;Dz.s0#
}©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 5
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 ?=/q
12. 以下代码有什么问题?[STL易]Rlg
typedef vector IntArray;jI(X
IntArray array;[Q4
array.push_back( 1 );/
array.push_back( 2 );ven2]
array.push_back( 2 );#Xg
array.push_back( 3 );J
// 删除array数组中所有的2keQv-g
for( IntArray::iterator itor=array.begin(); itor!=array.end(); ++itor )-=]5$>
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 5cQ
if( 2 == *itor ) array.erase( itor );
//这里需要重新计算itor
}©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 t
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 N'0
13. 写一个函数,完成内存之间的拷贝。[考虑问题是否全面]U-
答:©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 o*7|{
void* mymemcpy( void *dest, const void *src, size_t count )#E
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 :uyq
char* pdest = static_cast<char*>( dest );h6
const char* psrc = static_cast<const char*>( src );F
if( pdest>psrc && pdest<psrc+cout ) 能考虑到这种情况就行了@^"s:?
{ue:5
for( size_t i=count-1; i!=-1; --i)@$6-;{
pdest[i] = psrc[i];F
}MTF#a.
elseC)xUB"
{H
for( size_t i=0; i<count; ++I )`jHxb2
pdest[i] = psrc[i];]+457[
}SI'.I3
return dest;%
}©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 Y
int main( void )}c>1k
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 4
char str[] = "0123456789";wt[&]8
mymemcpy( str+1, str+0, 9 );Nw6'g
cout << str << endl;5
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 ?6a
system( "Pause" );c 5y!
return 0;;6ay
}©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 -D2
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 ]dKl1
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 h
本试题仅用于考查C++/C程序员的基本编程技能。内容限于C++/C常用语法,不涉及数据结构、算法以及深奥的语法。考试成绩v2
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 F8
能反映出考生的编程质量以及对C++/C的理解程度,但不能反映考生的智力和软件开发能力。!m
笔试时间90分钟。请考生认真答题,切勿轻视。!aa$,
C++笔试题(二十三)
Q1:请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图? 7=
: Q2:请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用? O
: TCP与UDP呢? u!^/U
: 总得来说前面两道题目还是比较简单的! fA]E
: Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实 [{R&
: 现的? Fue
Q4:请问C++的类和C里面的struct有什么区别? nn
: Q5:请讲一讲析构函数和虚函数的用法和作用? ]LAH4d
: Q6:全局变量和局部变量有什么区别?实怎么实现的?操作系统和编译器 9;
: 是怎么知道的? ^V4
: Q7:一些寄存器的题目,我忘记了具体实什么题目,主要好像是寻址和内 O
: 存管理等一些知识,不记得了。 s *Kh-
: Q8:8086是多少尉的系统?在数据总线上是怎么实现的?还有一些硬件方 \ua
: 面的知识我既不清楚了。 or
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 7r
: 一般建议参加华为的研发面试的同学先要准备一下相关的知识,软件的主要 0n.
: 是看看C和数据结构方面的,硬件模电,数电和微机原理 %)
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科两道c面试题
1、一个学生的信息是:姓名,学号,性别,年龄等信息,用一个链表,把这些学生信息连在一起, 给出一个age, 在些链表1\1
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 4
中删除学生年龄等于age的学生信息。7A}v
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 wu
程序代码&p
#I nclude "stdio.h"&>KWB
#I nclude "conio.h"*\:R'
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 #1HE
struct stu{0pN}
char name[20];6Z
char sex;a&?Fn?
int no;M(&1tN
int age;l%
struct stu * next;&SJnV^
}*linklist;&
struct stu *creatlist(int n)5c
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 f]}h
int I;z34Wh
//h为头结点,p为前一结点,s为当前结点j?
struct stu *h,*p,*s;lo3=
h = (struct stu *)malloc(sizeof(struct stu));n
h->next = NULL;l
p=h;>w
for(i=0;i<n;i++).
{ mfxwF
s = (struct stu *)malloc(sizeof(struct stu));-9luK
p->next = s;m&]K9v
printf("Please input the information of the student: name sex no age \n");m1z4dv
scanf("%s %c %d %d",s->name,&s->sex,&s->no,&s->age);C;o]F
s->next = NULL; $v
p = s;!p'M
}{'MQ
printf("Create successful!");cZb#
return(h);DZ^xX
}©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 c_;zw
void deletelist(struct stu *s,int a)|
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 k
struct stu *p;z\u~#I
while(s->age!=a){JK2
{©达内IT技术论坛—中国人p = s;0kj7
s = s->next;g
}©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 At
if(s==NULL)m<
printf("The record is not exist.");G\
else©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 [
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 C
p->next = s->next;'1a"'
printf("Delete successful!");04
}©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 T|mI
}©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 ~
void display(struct stu *s)W"aX'x
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 Q
s = s->next;-^h
while(s!=NULL)s6
{F S
printf("%s %c %d %d\n",s->name,s->sex,s->no,s->age);sp
s = s->next;4)T0x
}`)[/E
}©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 NImY(V
int main()ZF
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 P\}y
struct stu *s;]
int n,age;=oo
printf("Please input the length of seqlist:\n");y{DI_,
scanf("%d",&n);;q~l
s = creatlist(n);:6L:7g
display(s);]"3|B
printf("Please input the age:\n");_u%{k
scanf("%d",&age);9
deletelist(s,age);I%
display(s);If
return 0;ev
}©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 7J
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 q"rVJ;
2、实现一个函数,把一个字符串中的字符从小写转为大写。^GA
程序代码6f
#I nclude "stdio.h"^3}
#I nclude "conio.h"Tq*O
©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 >{]x
void uppers(char *s,char *us)
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 M}n
for(;*s!='\0';s++,us++)rdC
{\
if(*s>='a'&&*s<='z')s
*us = *s-32;
else
*us = *s;
}
*us = '\0';
}©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 (
int main()ncI
{©达内IT技术论坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达内科技论坛 J7?dv
char *s,*us;9fJ Y
char ss[20];q*V
printf("Please input a string:\n");+
scanf("%s",ss);q
s = ss;^X$&qR
uppers(s,us);..y4m-
printf("The result is:\n%s\n",us);sa&<c/
getch();E
}©达内IT技术论
C++笔试题(二十二)
C++
一、请填写BOOL , float, 指针变量 与“零值”比较的 if 语句。(10 分)
请写出 BOOL flag 与“零值”比较的 if 语句。(3 分)
标准答案:
if ( flag )
if ( !flag )
如下写法均属不良风格,不得分。
if (flag == TRUE)
if (flag == 1 )
if (flag == FALSE)
if (flag == 0)
请写出 float x 与“零值”比较的 if 语句。(4 分)
标准答案示例:
const float EPSINON = 0.00001;
if ((x >= - EPSINON) && (x <= EPSINON)
不可将浮点变量用“==”或“!=”与数字
比较,应该设法转化成“>=”或“<=”此
类形式。
如下是错误的写法,不得分。
if (x == 0.0)
if (x != 0.0)
请写出 char *p 与“零值”比较的 if 语句。(3 分)
标准答案:
if (p == NULL)
if (p != NULL)
如下写法均属不良风格,不得分。
if (p == 0)
if (p != 0)
if (p)
if (!)
二、以下为Windows NT 下的32 位C++程序,请计算sizeof 的值(10 分)
void Func ( char str[100])
{
请计算
sizeof( str ) = 4 (2 分)
}
char str[] = “Hello” ;
char *p = str ;
int n = 10;
请计算
sizeof (str ) = 6 (2 分)
sizeof ( p ) = 4 (2 分)
sizeof ( n ) = 4 (2 分)
void *p = malloc( 100 );
请计算
sizeof ( p ) = 4 (2 分)
三、简答题(25 分)
1、头文件中的 ifndef/define/endif 干什么用?(5 分)
答:防止该头文件被重复引用。
2、#include <filename.h> 和 #include “filename.h” 有什么区别?(5 分)
答:对于#include <filename.h> ,编译器从标准库路径开始搜索 filename.h
对于#include “filename.h” ,编译器从用户的工作路径开始搜索 filename.h
3、const 有什么用途?(请至少说明两种)(5 分)
答:(1)可以定义 const 常量
(2)const 可以修饰函数的参数、返回值,甚至函数的定义体。被const 修饰的东
西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。
4、在C++ 程序中调用被 C 编译器编译后的函数,为什么要加 extern “C”? (5 分)
答:C++语言支持函数重载,C 语言不支持函数重载。函数被C++编译后在库中的名字
与C 语言的不同。假设某个函数的原型为: void foo(int x, int y);
该函数被C 编译器编译后在库中的名字为_foo , 而C++编译器则会产生像
_foo_int_int 之类的名字。
C++提供了C 连接交换指定符号extern“C”来解决名字匹配问题。
5、请简述以下两个for 循环的优缺点(5 分)
for (i=0; i<N; i++)
{
if (condition)
DoSomething();
else
DoOtherthing();
}
if (condition)
{
for (i=0; i<N; i++)
DoSomething();
}
else
{
for (i=0; i<N; i++)
DoOtherthing();
}
优点:程序简洁
缺点:多执行了N-1 次逻辑判断,并且
打断了循环“流水线”作业,使得编译
器不能对循环进行优化处理,降低了效
率。
优点:循环的效率高
缺点:程序不简洁
四、有关内存的思考题(每小题5 分,共20 分)
void GetMemory(char *p)
{
p = (char *)malloc(100);
}
void Test(void)
{
char *str = NULL;
GetMemory(str);
strcpy(str, "hello world");
printf(str);
}
请问运行Test 函数会有什么样的结果?
答:程序崩溃。
因为GetMemory 并不能传递动态内存,
Test 函数中的 str 一直都是 NULL。
strcpy(str, "hello world");将使程序崩
溃。
char *GetMemory(void)
{
char p[] = "hello world";
return p;
}
void Test(void)
{
char *str = NULL;
str = GetMemory();
printf(str);
}
请问运行Test 函数会有什么样的结果?
答:可能是乱码。
因为GetMemory 返回的是指向“栈内存”
的指针,该指针的地址不是 NULL,但其原
现的内容已经被清除,新内容不可知。
void GetMemory2(char **p, int num)
{
*p = (char *)malloc(num);
}
void Test(void)
{
char *str = NULL;
GetMemory(&str, 100);
strcpy(str, "hello");
printf(str);
}
请问运行Test 函数会有什么样的结果?
答:
(1)能够输出hello
(2)内存泄漏
void Test(void)
{
char *str = (char *) malloc(100);
strcpy(str, “hello”);
free(str);
if(str != NULL)
{
strcpy(str, “world”);
printf(str);
}
}
请问运行Test 函数会有什么样的结果?
答:篡改动态内存区的内容,后果难以预
料,非常危险。
因为free(str);之后,str 成为野指针,
if(str != NULL)语句不起作用。
五、编写strcpy 函数(10 分)
已知strcpy 函数的原型是
char *strcpy(char *strDest, const char *strSrc);
其中strDest 是目的字符串,strSrc 是源字符串。
(1)不调用C++/C 的字符串库函数,请编写函数 strcpy
char *strcpy(char *strDest, const char *strSrc);
{
assert((strDest!=NULL) && (strSrc !=NULL)); // 2分
char *address = strDest; // 2分
while( (*strDest++ = * strSrc++) != ‘\0’ ) // 2分
NULL ;
return address ; // 2分
}
(2)strcpy 能把strSrc 的内容复制到strDest,为什么还要char * 类型的返回值?
答:为了实现链式表达式。 // 2 分
例如 int length = strlen( strcpy( strDest, “hello world”) );
六、编写类String 的构造函数、析构函数和赋值函数(25 分)
已知类String 的原型为:
class String
{
public:
String(const char *str = NULL); // 普通构造函数
String(const String &other); // 拷贝构造函数
~ String(void); // 析构函数
String & operate =(const String &other); // 赋值函数
private:
char *m_data; // 用于保存字符串
};
请编写String 的上述4 个函数。
标准答案:
// String 的析构函数
String::~String(void) // 3 分
{
delete [] m_data;
// 由于m_data 是内部数据类型,也可以写成 delete m_data;
}
// String 的普通构造函数
String::String(const char *str) // 6 分
{
if(str==NULL)
{
m_data = new char[1]; // 若能加 NULL 判断则更好
*m_data = ‘\0’;
}
else
{
int length = strlen(str);
m_data = new char[length+1]; // 若能加 NULL 判断则更好
strcpy(m_data, str);
}
}
// 拷贝构造函数
String::String(const String &other) // 3 分
{
int length = strlen(other.m_data);
m_data = new char[length+1]; // 若能加 NULL 判断则更好
strcpy(m_data, other.m_data);
}
// 赋值函数
String & String::operate =(const String &other) // 13 分
{
// (1) 检查自赋值 // 4 分
if(this == &other)
return *this;
// (2) 释放原有的内存资源 // 3 分
delete [] m_data;
// (3)分配新的内存资源,并复制内容 // 3 分
int length = strlen(other.m_data);
m_data = new char[length+1]; // 若能加 NULL 判断则更好
strcpy(m_data, other.m_data);
// (4)返回本对象的引用 // 3 分
return *this;
}
请编写String的上述4个函数。8
坛—中国人学Java、学C++、学C#/.Net、学软件、学IT的地方 -- 达
C++笔试题(二十一)
1、
下面的程序是否有错误,如果有错,请说明原因。
struct A1 { int i; };
A1 a1;
a1.i = 0;
没有错误
class A1 { int i;};
A1 a1;
a1.i = 0;
有错误,未显示权限定义符缺省为private。
2、 下面程序是否有错,有错,请说明原因。:
char szTest[] = “hello”;
char* const psz = szTe
展开阅读全文