我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

« 1 2» Pages: ( 1/2 total )
本页主题: C/C++程序基础知识——笔试或面试可能用得上 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

zhd32



性别: 帅哥 状态: 该用户目前不在线
等级: 版主
家族: YD一族
发贴: 619
威望: 0
浮云: 543
在线等级:
注册时间: 2006-04-22
最后登陆: 2009-06-22

5come5帮你背单词 [ soccer /'sokə/ n. 足球 ]


C/C++程序基础知识——笔试或面试可能用得上

昨天班上有位GG问我一个程序“问题”
发现仿佛很多GG不知道某些东西
在这里写一些,知道的GG些不要B4哈
如有错误,欢迎指出


[ 此贴被zhd32在2007-11-04 20:15重新编辑 ]
本帖最近评分记录:
  • 浮云:15(震月) 赞
  • 顶端 Posted: 2007-11-04 19:47 | [楼 主]
    zhd32



    性别: 帅哥 状态: 该用户目前不在线
    等级: 版主
    家族: YD一族
    发贴: 619
    威望: 0
    浮云: 543
    在线等级:
    注册时间: 2006-04-22
    最后登陆: 2009-06-22

    5come5帮你背单词 [ centennial // n. 一百周年,一百周年纪念(日) ]


    一:内存
    Copy code
    void
    foo(void) {
        char *str1 = "test1"; // test1 这个串位于哪个位置? Q1
        char str2[] = "test2";//test2 这个串位于哪个位置?  Q2

        *str1 = 'a'; //正确否?Why? Q3
        *str2 = 'b'; //正确否?Why? Q4
    }

    A1: test1 位于 文本区(.TEXT)
    A2: test2 位于 栈(堆 是 堆,栈 是 栈, 不要混淆)
    A3: 不正确,不能修改文本区的数据,Windows会引起Win32异常(访问冲突),Linux会引发segment fatal
    A4: 正确,test2 位于栈内,随便你咋修改
    PS:不能在栈内分配过大的空间,不然会栈溢出
    Copy code
    void
    foo() {
        int largearray[1000 * 1000]; //溢出
    }


    Copy code

    int largearray[1000 * 1000]; //不会溢出
    void
    foo() {
        //........   
    }



    另外一个
    Copy code
    typedef struct {
        int a;
        char b;
        float c;   
    }mystruct;

    sizeof(mystruct) = ?


    一般情况下为 4 + 4 + 4 = 12,字节对齐,感兴趣的GG自己上外网找下


    [ 此帖被zhd32在2007-11-07 11:18重新编辑 ]
    顶端 Posted: 2007-11-04 19:47 | [1 楼]
    luwen



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 无我相
    等级: 人见人爱
    发贴: 4372
    威望: 0
    浮云: 1120
    在线等级:
    注册时间: 2006-09-14
    最后登陆: 2013-09-25

    5come5帮你背单词 [ specify /'spesifai/ vt. 指定,详细说明 ]


    先友情帮顶了哈
    顶端 Posted: 2007-11-04 19:50 | [2 楼]
    joezxd



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 我的目标是太阳
    等级: 人见人爱
    家族: 绘里香榭
    发贴: 2226
    威望: 0
    浮云: 1112
    在线等级:
    注册时间: 2006-10-07
    最后登陆: 2019-01-07

    5come5帮你背单词 [ honest /'onist/ a. 诚实的,可靠的,坦率的,正直的 ]


    我也想看哈  lz快点出啊
    顶端 Posted: 2007-11-04 19:57 | [3 楼]
    zhd32



    性别: 帅哥 状态: 该用户目前不在线
    等级: 版主
    家族: YD一族
    发贴: 619
    威望: 0
    浮云: 543
    在线等级:
    注册时间: 2006-04-22
    最后登陆: 2009-06-22

    5come5帮你背单词 [ spanish /'spæni/ a. 西班牙(人)的;n. 西班牙语,西班牙人 ]


    数组和指针

    数组和指针
    Copy code
    void
    foo1(int array1[100]) {
        int array2[100];
        int *array3 = array;

        sizeof(array1) = ??
        sizeof(array2) = ??
        sizeof(array3) = ??
       
    }

    虚参中的数组会退化为指针,现有大部分操作系统都为平坦内存模式(不知道名字正确不,反正不会再依靠 段地址 + 偏移地址 来寻址了),32位机,32位内存地址长度,So,sizeof(array1) = 4,sizeof(array2) = 400 = 100 * 4,
    sizeof(array3) = 4

    还有个
    Copy code
    int array1[1000 * 1000];
    int *array2;
    void
    foo() {
        array2 = array1;
        //loop1
        for(int i=0; i < 1000*1000; i++) {
            array1[i] = i;
        }
       
        //loop2
        for(int i=0; i < 1000*1000; i++) {
            array2[i] = i;
        }
    }

    loop2和loop1的效率哪个高???

    loop1的效率高,编译器可直接计算出 array1[i] 代表的数据的偏移地址
    a).array1的起始地址(编译时可知)  +  i * sizeof(int)
    而需要2步才能计算出 array2[i] 的偏移地址
    a).取 array2 的值(运行时才可知) V2
    b).V2  +  i * sizeof(int)




    [ 此贴被zhd32在2007-11-04 20:33重新编辑 ]
    顶端 Posted: 2007-11-04 20:08 | [4 楼]
    zhd32



    性别: 帅哥 状态: 该用户目前不在线
    等级: 版主
    家族: YD一族
    发贴: 619
    威望: 0
    浮云: 543
    在线等级:
    注册时间: 2006-04-22
    最后登陆: 2009-06-22

    5come5帮你背单词 [ below /bi'ləu/ prep. 在…下面,下方;adv. 在下面,向下 ]


    占楼
    暂时想不到其他可以说的了
    想起了补上来


    [ 此贴被zhd32在2007-11-04 20:36重新编辑 ]
    顶端 Posted: 2007-11-04 20:08 | [5 楼]
    再不斩



    性别: 帅哥 状态: 该用户目前不在线
    等级: 鹤立鸡群
    发贴: 1414
    威望: 0
    浮云: 1413
    在线等级:
    注册时间: 2005-12-23
    最后登陆: 2009-04-26

    5come5帮你背单词 [ rag /ræg/ n. 破布,(pl.)破旧衣服 ]


    嗯,很好,第一个问题一向不注意。
    顶端 Posted: 2007-11-04 21:09 | [6 楼]
    mengji2006





    性别: 帅哥 状态: 该用户目前不在线
    等级: 栋梁之材
    发贴: 723
    威望: 0
    浮云: 1201
    在线等级:
    注册时间: 2006-11-25
    最后登陆: 2008-01-17

    5come5帮你背单词 [ hall /ho:l/ n. 门厅,过道,礼堂,会堂,办公大楼 ]


    很不错,谢谢了哈
    顶端 Posted: 2007-11-04 22:08 | [7 楼]
    jie





    性别: 帅哥 状态: 该用户目前不在线
    等级: 栋梁之材
    发贴: 983
    威望: 0
    浮云: 1105
    在线等级:
    注册时间: 2005-10-09
    最后登陆: 2008-06-23

    5come5帮你背单词 [ preferable /'prefərəbl/ a. 更可取的,更好的 ]


    很好,貌似笔试面试几乎都答错了。
    顶端 Posted: 2007-11-06 21:52 | [8 楼]
    夜空



    性别: 帅哥 状态: 该用户目前不在线
    等级: 初出茅庐
    发贴: 84
    威望: 0
    浮云: 1122
    在线等级:
    注册时间: 2007-10-23
    最后登陆: 2008-06-27

    5come5帮你背单词 [ fall /fo:l/ vi. 落下,降落,陷落,跌倒,下降,减弱;n. 落下,降落,跌倒,下降,减弱,秋季 ]


    哇。。这些题都不太好答啊。。绝对不算是C/C++的基础了。。。
    顶端 Posted: 2007-11-07 00:37 | [9 楼]
    jon986cn





    性别: 保密 状态: 该用户目前不在线
    等级: 品行端正
    发贴: 486
    威望: 0
    浮云: 1143
    在线等级:
    注册时间: 2005-10-06
    最后登陆: 2008-06-21

    5come5帮你背单词 [ revolt /ri'vəult/ v. 起义,造反,厌恶,反感;n. 反抗,造反 ]


    恩,挺好的,谢谢了
    顶端 Posted: 2007-11-09 11:32 | [10 楼]
    endi



    性别: 帅哥 状态: 该用户目前不在线
    等级: 品行端正
    发贴: 440
    威望: 0
    浮云: 1272
    在线等级:
    注册时间: 2007-10-13
    最后登陆: 2013-06-03

    5come5帮你背单词 [ rally /'ræli/ v. 召集,集会 v. 集合,重整,恢复(元气),振作(精神);n. 群众集会,汽车拉力赛 ]


    不错,谢谢~~~~
    顶端 Posted: 2007-11-13 12:05 | [11 楼]
    k哥



    性别: 帅哥 状态: 该用户目前不在线
    等级: 鹤立鸡群
    家族: 物电学子快快快
    发贴: 1109
    威望: 0
    浮云: 1109
    在线等级:
    注册时间: 2007-09-07
    最后登陆: 2010-09-21

    5come5帮你背单词 [ hurricane /'hΛrikən/ n. 龙卷风,暴风(雨) ]


    先谢谢了哈
    顶端 Posted: 2007-11-13 19:23 | [12 楼]
    yinx



    性别: 帅哥 状态: 该用户目前不在线
    等级: 人见人爱
    家族: 丢丢
    发贴: 2333
    威望: 0
    浮云: 1260
    在线等级:
    注册时间: 2006-09-15
    最后登陆: 2009-05-11

    5come5帮你背单词 [ councilor // n. 顾问,(使馆)参赞 ]


    Quote:
    引用第1楼zhd32于2007-11-04 19:47发表的  :
    一:内存
    [code]
    void
    foo(void) {
        char *str1 = "test1"; // test1 这个串位于哪个位置? Q1
    .......


    支持~~~,这些问题真的很重要而又很容易被忽略

    不过有一个小问题,“test1“这个字串是在.data(已初始化的数据段)里的。
    顶端 Posted: 2007-11-13 20:38 | [13 楼]
    zhd32



    性别: 帅哥 状态: 该用户目前不在线
    等级: 版主
    家族: YD一族
    发贴: 619
    威望: 0
    浮云: 543
    在线等级:
    注册时间: 2006-04-22
    最后登陆: 2009-06-22

    5come5帮你背单词 [ determination /ditə:mi'neiən/ n. 决心,决定,测定,诉讼的终止 ]


    Quote:
    引用第13楼yinx于2007-11-13 20:38发表的  :


    支持~~~,这些问题真的很重要而又很容易被忽略

    不过有一个小问题,“test1“这个字串是在.data(已初始化的数据段)里的。

    O??
    反正我记得是在静态数据区的,因为已初始化的数据段里的数据可以被修改~~
    洗完澡查一下
    顶端 Posted: 2007-11-13 23:07 | [14 楼]
    « 1 2» Pages: ( 1/2 total )
    我来我网·5come5 Forum » 程序员之家

    Total 0.012146(s) query 5, Time now is:11-22 17:01, Gzip enabled
    Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号