《法度员口试宝典》之C/C++法度设计

    添加时间:2013-5-3 点击量:

     

     

    有两个变量a、b,不消“if”、”?:“、”switch“或其他断定语句,找出两个数中斗劲大的。

    答案:int max = ((a+b)+abs(a-b))/2

     

    如何将a、b的值进行互换,并且不实用任何中心变量?

    答案:

     

    C和C++的关系:

     

    一个5位数字ABCDE4=EDCBA,这五个数字不反复,请用编程求出这个数字是几许?

    #include<stdio.h>
    
    #include
    <stdlib.h>

    int main(){
    forint i = 10000;i < 100000;i++
    {
    int j = 0, t = i;
    while(t!=0
    {
    j
    = j10 + t%10;
    t
    /=10;
    }
    if((i 4)==j)
    {
    printf(
    "%d\n",i);
    break;
    }
    }
    return 0;
    }



    &#160;



    在const成员函数中,用mutable润饰成员变量名后,就可以批改类的成员变量了。



    &#160;



    sizeof 与 strlen的深切懂得:






    (9)、数组作为参数传给函数时传的是指针而不是数组;



    (10)、策画布局变量的大小就必须评论辩论数据对齐题目;



    (11)、sizeof 操纵符不克不及用于函数类型、不完全类型或位字段。






    &#160;



    一个空类所占空间为1,多重持续的空类所占空间还是1,然则虚持续涉及到虚表(虚指针),指针占用空间为4。



    &#160;



    char c[] = “hello world”; 是分派一个局部变量,局部变量的值是可以批改的;



    char c = “hello world”; 是分派一个全局变量,全局变量的值是不克不及修进行改的。



    &#160;



    典范递归题目:















    &#160;





    面向对象(OOP)编程说话必须供给对象、类和持续。



    覆盖是指子类从头定寄父类的虚函数的做法,



    重载是指容许存在多个同名函数,而这些函数的参数表不合(或参数个数,或参数类型不合,或两者都不合);



    &#160;



    位制转换:




    #include<stdio.h>
    
    #include
    <stdlib.h>
    int main(){
    printf(
    "%f\n"5);
    printf(
    "%d\n"5.01);
    }





    &#160;













    &#160;



    公道的应用关键字const可以使编译器很天然的保护那些不被改变的参数,防止其被无意的代码批改。



    一个定义为volatile的变量是申明这变量可能会心想不到的改变,如许,编译器就不会去假设这个变量的值了。



    一个参数可以既是const又是volatile,比如只读的状况存放器;



    一个指针可所以volatile,比如当一个中断办事子法度批改一个指向一个buffer的指针时。

    所有随风而逝的都属于昨天的,所有历经风雨留下来的才是面向未来的。—— 玛格丽特·米切尔 《飘》
    分享到: