A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zhao543 中级黑马   /  2017-6-12 23:04  /  1035 人查看  /  0 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

********************C语言*********************

1,1个C程序从编写到执行,有哪几步?
编写代码--编译---链接---执行


2,do-while循环和while循环的区别
    do-while循环无论条件成立与否都会执行一次循环体,
    while循环严格按照先判断再确定是否执行循环体


3.什么是函数
函数就是一段实现了特定功能的代码


4,全局变量和局部变量的异同点
  1)相同点
        都是变量,都是用来存储数据的.
  2)不同点
    1.定义的位置不同
        局部变量:定义在函数内部
        全局变量:定义在所有函数外部
     2.作用域不同
        局部变量"最多"只能在函数的内部访问
        全局变量:从定义的位置开始,从定义的这一行以下都能访问
     3.初始值不同
        局部变量:初始是垃圾值
        全局变量:一般是0
    4)创建和回收的时间不同
        局部变量:程序运行到局部变量那一行代码的时候才会创建,在作用域结束回收
        全局变量:程序一启动就会创建,在程序运行结束回收

4,函数根据参数和返回值分为哪几类
    无参无返回值函数
    有参无返回值函数
    有参有返回值函数
    无参有返回值函数


5,如何分模块开发?
    1>要提供2个文件
        1).h文件 --函数的声明
        2).c文件 --函数的实现
    2,调用的时候,只需要包含模块的头文件就可以


6,什么是位运算?
是直接对整数在内存中的二进制位进行操作的运算(只能操作整形数据)


7,按位左移和右移区别
    左移
    1). 左移运算有可能会改变其正负性.
    2). 将1个数左移n位,相当于将这个数乘以2的n次方.
    右移
    1). 右移运算不会改变正负性.
    2). 将1个数按位右移n位.相当于这个数除以2的n次方.


8,当数组作为函数的参数,会不会丢失长度,怎么解决
当数组作为函数的参数的时候. 会丢失数组的长度,如果需要用数组长度要额外传递


9,基本数据类型作为函数的参数和数组作为函数参数传递有什么区别
    基本数据类型作为函数的参数是值传递
    数组作为函数参数是地址传递


10,指针概念
指针是一个数据类型,这数据类型可以用来定义变量,这个变量是专门用来保存地址的!


11.字符串数据在C语言中的存储.
    1, 使用字符数组来存储.  char name[] = "jack";
    2,使用字符指针来存储字符串数据.  char* name = "jack";


12,以字符指针的形式存储字符串的时候,字符串数据能不能修改,为什么?
不能修改,因为它是存在常量区的.


13,内存的五块区域?
    a. 栈
    是专门用来存储局部变量的.所有的局部变量都是声明在栈区域中的.
    b. 堆
    允许程序员手动的从堆申请空间来使用.(对象)
    c. BSS段
    是用来存储未初始化的全局变量和静态变量.
    d. 数据段/常量区
    用来存储已经初始化的全局变量、静态变量.还有常量数据.
    e. 代码段
    用来存储程序的代码/指令.


14,指针作为函数的参数可以实现的效果
    1.在函数的内部可以通过这个参数指针去修改实参变量的值.
    2.可以实现函数有多个返回值


16,字符串处理函数, strcpy,   strcmp,   strcat


17,结构体数组
    本质是一个数组,数组里面的每一个元素都是结构体


18,什么时候自己要定义枚举?
    变量的取值有限定的几个范围,就可以用枚举


19,#define  和  typedef 的区别
    1).#define是1个预处理指令.在预编译的时候执行. 在预编译的时候会吧宏名换成宏值.
    typedef 是1个C代码. 在运行的时候才会执行.
    2).#define 可以将任意的C代码取1个标识名.
    typedef只能为数据类型取名字.


20,static与extern修饰全局变量
    static:表示变量只能被当前文件访问.
    extern:所有文件共享.


21,static和extern修饰函数
    static修饰函数:表示函数为内部函数只能被本文件访问.
    extern修饰函数:表示函数为外部部函数能被程序的所有文件访问.(默认)


22,static和extern修饰局部变量:
    static:表示延长变量生命周期至程序结束.
    extern不能修饰局部变量


23,预处理指令的分类
    1>文件包含指令  #include
    2>宏定义  #define    (用来替换代码)
    3>条件编译 #if  (满足一定的条件才编译)




0 个回复

您需要登录后才可以回帖 登录 | 加入黑马