C/C++面试题

作者: ThaiLanKing | 来源:发表于2017-07-23 16:26 被阅读137次

记录一些知识点比较有趣,且开发中可能涉及较多的C/C++相关面试题


- (void)test
{
    unsigned int a = 6;
    int b = -20;
    (a+b > 6) ? NSLog(@">6") : NSLog(@"<=6");
}

输出:>6

分析:b和a运算,精度会自动转为unsigned int,涉及C语言整数自动转换原则:当表达式中存在有符号类型和无符号类型时,所有的操作数都自动转换为无符号类型。


- (void)test
{
    int a[5] = {1, 2, 3, 4, 5};
    int *ptr = (int *)(&a+1);
    printf("%d, %d", *(a+1), *(ptr-1));
}

输出:2, 5

分析:*(a+1)就是a[1],*(ptr-1)就是a[4]

  • &a+1不是首地址加1,系统会认为是加一个a数组的偏移,本处即是5,ptr实际就是a+5。
  • a,&a地址一样,但是意义不一样,a是数组首地址,&a是对象首地址,a+1是数组下一个元素的地址,&a+1是下一个对象地址,即a[5]

相关文章

  • C++基础

    c++面试题

  • Java基础知识与面试题整理

    # Java基础知识与面试题整理(一) @[toc] ---- ---- ## 垃圾回收机制 传统C/C++等编程...

  • 无题

    找工作时的四个知识块:c/c++、系统网络编程、数据库和qt。 c/c++的知识点浓缩在面试题库中了,可以好好看看...

  • OC 对象的本质(一)

    先来看一个面试题 我们来用clang编译器转起c++ 看看. 打开C++文件发现其生成的对象转成如下图所示 NSO...

  • sizeof与字节对齐

    参考 【面试题】sizeof引发的血案编译器与字节对齐c 语言字节对齐问题详解C/C++内存对齐内存存取粒度C和C...

  • iOS面试题

    最近在找工作,把遇到的面试题累计一下 1. objective-c与C++的区别 1、Objective C基本上...

  • 面试准备

    最近发现了一个博客,写的还蛮好的,东西很全,主要是关于C++后台开发的各种知识 C++后台开发面试题 每日算法 设...

  • 知识点(三)

    参考:图像处理职位面试题(图像处理+c++)https://blog.csdn.net/u014114990/ar...

  • 剑指offer学习笔记:整体结构

    67道经典面试题+相关扩展 c++版 从面试题6开始附leetcode或者牛客网连接 哎,简书怎么上传xmind呀

  • c/c++ 面试题

    1 string https://www.jianshu.com/p/cf2149034ae3模拟实现 strin...

网友评论

    本文标题:C/C++面试题

    本文链接:https://www.haomeiwen.com/subject/jpsmkxtx.html