与C相关笔试题目_第1页
与C相关笔试题目_第2页
与C相关笔试题目_第3页
与C相关笔试题目_第4页
与C相关笔试题目_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

与C有关的笔试题目C的知识大家知道多少呢?下边是小编整理的与C有关的题目,欢迎参照。目及答案已知strcpy的函数原型:char*strcpy(char*strDest,constchar*strSrc)此中strDest是目的字符串,strSrc是源字符串。不调用C++/C的字符串库函数,请编写函数strcpy。答案:/*1编写strcpy函数(10分)已知strcpy函数的原型是char*strcpy(char*strDest,constchar*strSrc);此中strDest是目的字符串,strSrc是源字符串。不调用C++/C的字符串库函数,请编写函数strcpy(2)strcpy能把strSrc的内容复制到strDest,为何还要char种类的返回值?答:为了实现链式表达式。//2分2比如intlength=strlen(strcpy(strDest,helloworld));*/#include#includechar*strcpy(char*strDest,constchar*strSrc){assert((strDest!=NULL)(strSrc!=NULL));//2分3char*address=strDest;//2分while((*strDest++=*strSrc++)!=\0)//2分NULL;returnaddress;//2分}此外strlen函数以下:#include4#includeintstrlen(constchar*str)//输入参数const{assert(str!=NULL);//断言字符串地点非0intlen=0;while((*str++)!=\0){len++;5}returnlen;}已知String类定义以下:classString{public:6String(constchar*str=NULL);//通用结构函数String(constStringanother);//拷贝结构函数~String( );//析构函数Stringoperater=(constStringrhs);//赋值函数private:char*m_data;//用于保留字符串};7试试写出类的成员函数实现。答案:String::String(constchar*str){if(str==NULL)//strlen在参数为NULL时会抛异样才会有这步判断{m_data=newchar[1];8m_data[0]=\0}else{m_data=newchar[strlen(str)+1];strcpy(m_data,str);}}9String::String(constStringanother){m_data=newchar[strlen(another.m_data)+1];strcpy(m_data,other.m_data);}StringString::operator=(constStringrhs){10if(this==rhs)return*this;delete[]m_data;//删除本来的数据,新开一块内存m_data=newchar[strlen(rhs.m_data)+1];strcpy(m_data,rhs.m_data);return*this;}11String::~String( ){delete[]m_data;}3..h头文件中的ifndef/define/endif的作用?答:防备该头文件被重复引用。4.#include与#includefile.h的差别?答:前者是从StandardLibrary的路径找寻和引用file.h,而12后者是从目前工作路径找寻并引用file.h。5.在C++程序中调用被C编译器编译后的函数,为何要加externC?第一,作为extern是C/C++语言中表示函数和全局变量作用范围(可见性)的重点字,该重点字告诉编译器,其申明的函数和变量能够在本模块或其余模块中使用。往常,在模块的头文件中对本模块供应给其余模块引用的函数和全局变量以重点字extern申明。比如,假如模块B欲引用该模块A中定义的全局变量和函数时只要包括模块A的头文件即可。这样,模块B中调用模块A中的函数时,在编译阶段,模块B固然找不到该函数,可是其实不会报错;它会在连结阶段中从模块A编译生成的目标代码中找到此函数externC是连结申明(linkagedeclaration),被externC修饰的变量和函数是依据C语言方式编译和连结的。13C++笔试题目及答案1.WhatsoverloadfunctioninC++?重载是指编写一个与已有函数同名但参数表不一样的函数。组成重载的条件是:在同样的范围内(比方说在同一个类中),函数名字相同,但函数参数不一样(要么参数种类不一样,要么参数个数不一样,要么二者都不一样)2.A.WhatsinlinefunctioninC++?内联函数是指嵌入代码,就是在调用函数的地方不是跳转,而是直接把代码写到那边去。它与一般函数对比能提升效率,由于它不需要中止调用,在编译的时候内联函数能够直接把代码镶嵌到目标代码中去,省去了函数调用的开支,可是它是以代码膨胀为代码的(以增添空间耗费为代价)14B.Whenwouldyouuseinlinefunction?一个函数不停的被重复调用函数只有简单的几行,且函数内部包括:for,while,switch语句。C.Pleasewritesamplecode.voidFoo(intx,inty);inlinevoidFoo(intx,inty){...}需要注意的是:重点字inline一定与函数定义体放在一同才能使函数组成内联,仅将inline放在函数申明前不起任何作用。153.Whichofthefollowingarelegal?Forthoseusagesthatareillegal,explainwhy.constintbuf;不合法。由于定义const变量(常量)时一定进行初始化,而buf没有初始化。intcnt=0;constintsz=cnt;合法。16cnt++;sz++;不合法。由于改正了const变量sz的值。PleasepointouttheerrorsinthefollowingC++code.Andwhy?switch(ival){case1,3,5,7,9:oddcnt++;break;17case2,4,6,8,10:evencnt++;break;}貌似case不可以把全部的状况并列列出来,没见过case1,3,5,7,9:这类写法,改为case1:oddcnt++;case3:oddcnt++;C#笔试题目及答案c#中错误办理体制有哪些CLR供应的结构化错误办理体制,用try..catch..finally捕捉2.public/protect/private/internal修饰符的差别18public:任何类和成员都能够接见protect:该类和派生类能接见private:只好该类接见internal:只好在包括它的程序集中接见大批数据(如3000万条数据)并发办理时,有哪几种体制储存过程或事务.获得最大表记的时候同时更新,注意主键不是自增量方式.这类方法并发的时候是不会重复主键的,获得最大表记要有一个储存过程来获得.194.String/StringBuilder的异同string是一个不行变的数据种类,一旦对字符串对象进行了初始化,该字符串对象就不可以改变了。改正字符串内容的方法和运算符其实是创立一个新的字符串.stringbuilder分派好内存,对字符串的改正就在赋予stringbuilder实例的储存单元中进行.举例:string确实是不可以改正的:20stringstr=astr=b//str是被赋值了b没错,可是str里面本来的string值a并无被改正。stringstr=astringstr1=str;str+=b//此时str=ab,str1=aStringBuilderstr=newStringBuilder(a);StringBuilderstr1=str;21str.Append(b);str.ToString( )和str1.ToString( )都是ab。5.解说stringstr=null/stringstr=str=null,申明而不分内存空间,str=申明而分内存空间什么是单例模式,写个运用单例模式的类Singleton模式包括的角色只有一个,就是Singleton。Singleton拥有一个私有结构函数,保证用户没法经过new直接实例它22Singletonpattern--StructuralexampleusingSystem;SingletonclassSingleton{//FieldsprivatestaticSingletoninstance;23ConstructorprotectedSingleton( ){}MethodspublicstaticSingletonInstance( ){UsesLazyinitializationif(instance==null)instance=newSingleton( );24returninstance;}}/**////ClienttestpublicclassClient25{publicstaticvoidMain( ){Constructorisprotected--cannotusenewSingletons1=Singleton.Instance( );Singletons2=Singleton.Instance( );if(s1==s2)26Console.WriteLine(Thesameinstance);}}ASP.NET页面间传达有哪几种方式QueryString,response.Redirect( ),session,server.Transfer解说重载/覆盖WebServices的含义/UDDI的含义Web服务是利用SOAP在HTTP上履行远程方法调用的一种27新方法。UDDI的含义:一致描绘发现和集成(UDDI)供应一种公布和查找服务描绘的方法。虚函数/抽象函数各自的定义虛函數:由virtual聲明,它允許在派生類中被重寫,要重寫方法,必須先聲名為virtualpublicclassmyclass{publicvirtualintmyint( )28{函數体;}}classmyclas

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论