zoukankan      html  css  js  c++  java
  • 关于头文件的一道选择题

    题目:

    以下关于头文件,说法正确的是(B)

    A、#include,编译器寻找头文件时,会从当前编译的源文件所在的目录去找

    B、#include“filename.h”,编译器寻找头文件时,会从通过编译选项指定的目录去找

    C、多个源文件同时用到的全局整数变量,它的声明和定义都放在头文件中,是好的编程习惯

    D、在大型项目开发中,把所有自定义的数据类型、全局变量、函数声明都放在一个头文件中,各个源文件都只需要包含这个头文件即可,省去了要写很多#include语句的麻烦,是好的编程习惯。

    知识点:

    A、#include头文件有两种方式,一种是尖括号如<filename.h>、一种是双引号如“filename.h”,不同引用方式的查找路径也不一样。

         <>的查找路径顺序为:

         1、“-I dir1 –I dir2 ...”编译选项指定的路径目录;2、标准路径,即系统或用户配置的路径,如/usr/include,/usr/local/include等; 3、不会在当前目录下寻找头文件;

        “”的查找路径顺序为:

         1、当前目录;2、“-I dir1 –I dir2 ...”编译选项指定的路径目录;3、标准路径

    B、正确

    C、多个源文件共用一个全局变量,一般通过extern在头文件.h中声明该变量,然后在源文件.cpp中定义,如果在头文件中定义的话,多个源文件同时引用该头文件,会造成重复定义的错误。

         关于声明,根据C++标准的规定,一个变量声明必须同时满足两个条件,否则就是定义: 
           (1)声明必须使用extern关键字;(2)不能给变量赋初值 
           extern  int  a;  //声明

           int  a;  //定义

           int  a  =  0; //定义

           extern  int  a  =0;  //定义

    D、并不是所有的东西都要放到同一头文件里面,可以根据需要放到不同的头文件中

  • 相关阅读:
    笔试面试题集锦
    Mosquitto pub/sub服务实现代码浅析-主体框架
    查找算法(一)
    基数排序
    插入排序-----希尔排序
    插入排序------直接插入排序
    归并排序
    选择排序--------简单选择排序
    交换排序------冒泡排序
    排序算法
  • 原文地址:https://www.cnblogs.com/AndyJee/p/4462692.html
Copyright © 2011-2022 走看看