欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    一些c和c笔试题.pdf

    • 资源ID:89834056       资源大小:4.57MB        全文页数:51页
    • 资源格式: PDF        下载积分:12金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    一些c和c笔试题.pdf

    C 语 言 面 试 题 总 汇 4.static有 什 么 用 途?(请 至 少 说 明 两 种)1.限 制 变 量 的 作 用 域 2.设 置 变 量 的 存 储 域 7.引 用 与 指 针 有 什 么 区 别?1)引 用 必 须 被 初 始 化,指 针 不 必。2)引 用 初 始 化 以 后 不 能 被 改 变,指 针 可 以 改 变 所 指 的 对 象。2)不 存 在 指 向 空 值 的 引 用,但 是 存 在 指 向 空 值 的 指 针。8.描 述 实 时 系 统 的 基 本 特 性 在 特 定 时 间 内 完 成 特 定 的 任 务,实 时 性 与 可 靠 性 9.全 局 变 量 和 局 部 变 量 在 内 存 中 是 否 有 区 别?如 果 有,是 什 么 区 别?全 局 变 量 储 存 在 静 态 数 据 库,局 部 变 量 在 堆 栈 10.什 么 是 平 衡 二 叉 树?左 右 子 树 都 是 平 衡 二 叉 树 且 左 右 子 树 的 深 度 差 值 的 绝 对 值 不 大 于 111.堆 栈 溢 出 一 般 是 由 什 么 原 因 导 致 的?没 有 回 收 垃 圾 资 源 12.什 么 函 数 不 能 声 明 为 虚 函 数?constructor13.冒 泡 排 序 算 法 的 时 间 复 杂 度 是 什 么?0(nA2)14.写 出 float x 与“零 值”比 较 的 i f语 句。if(x0,000001&x-0.000001)16.Internet采 用 哪 种 网 络 协 议?该 协 议 的 主 要 层 次 结 构?tcp/ip应 用 层/传 输 层/网 络 层/数 据 链 路 层/物 理 层 17.Internet物 理 地 址 和 IP地 址 转 换 采 用 什 么 协 议?ARP(Address Resolution Protocol)(地 址 解 析 协 议)18.I P 地 址 的 编 码 分 为 哪 俩 部 分?I P 地 址 由 两 部 分 组 成,网 络 号 和 主 机 号。不 过 是 要 和“子 网 掩 码”按 位 与 上 之 后 才 能 区 分 哪 些 是 网 络 位 哪 些 是 主 机 位。2.用 户 输 入 M,N值,从 1至 N 开 始 顺 序 循 环 数 数,每 数 到 M 输 出 该 数 值,直 至 全 部 输 出。写 出 C 程 序。循 环 链 表,用 取 余 操 作 做 3.不 能 做 switch。的 参 数 类 型 是:switch的 参 数 不 能 为 实 型。华 为 1、局 部 变 量 能 否 和 全 局 变 量 重 名?答:能,局 部 会 屏 蔽 全 局。要 用 全 局 变 量,需 要 使 用“:局 部 变 量 可 以 与 全 局 变 量 同 名,在 函 数 内 引 用 这 个 变 量 时,会 用 到 同 名 的 局 部 变 量,而 不 会 用 到 全 局 变 量。对 于 有 些 编 译 器 而 言,在 同 一 个 函 数 内 可 以 定 义 多 个 同 名 的 局 部 变 量,比 如 在 两 个 循 环 体 内 都 定 义 个 同 名 的 局 部 变 量,而 那 个 局 部 变 量 的 作 用 域 就 在 那 个 循 环 体 内2、如 何 引 用 一 个 已 经 定 义 过 的 全 局 变 量?答:extern可 以 用 引 用 头 文 件 的 方 式,也 可 以 用 extern关 键 字,如 果 用 引 用 头 文 件 方 式 来 引 用 某 个 在 头 文 件 中 声 明 的 全 局 变 理,假 定 你 将 那 个 变 写 错 了,那 么 在 编 译 期 间 会 报 错,如 果 你 用 extern方 式 引 用 时,假 定 你 犯 了 同 样 的 错 误,那 么 在 编 译 期 间 不 会 报 错,而 在 连 接 期 间 报 错 3、全 局 变 量 可 不 可 以 定 义 在 可 被 多 个.C文 件 包 含 的 头 文 件 中?为 什 么?答:可 以,在 不 同 的 C 文 件 中 以 static形 式 来 声 明 同 名 全 局 变 量。可 以 在 不 同 的 C 文 件 中 声 明 同 名 的 全 局 变 量,前 提 是 其 中 只 能 有 个 C 文 件 中 对 此 变 量 赋 初 值,此 时 连 接 不 会 出 错 4、语 句 for(;1;)有 什 么 问 题?它 是 什 么 意 思?答:和 while。)相 同。5、do.while 和 while.do 有 什 么 区 别?答:前 一 个 循 环 一 遍 再 判 断,后 一 个 判 断 以 后 再 循 环 6、请 写 出 下 列 代 码 的 输 出 内 容#includemain()(int a,b,c,d;a=10;b=a+;c=+a;d=10*a+;printf(b,c,d:%d,%d,%d,b,c,d);return 0;)答:10,12,1201、static全 局 变 量 与 普 通 的 全 局 变 量 有 什 么 区 别?static局 部 变 量 和 普 通 局 部 变 量 有 什 么 区 别?static函 数 与 普 通 函 数 有 什 么 区 别?全 局 变 量(外 部 变 量)的 说 明 之 前 再 冠 以 s ta tic就 构 成 了 静 态 的 全 局 变 量。全 局 变 量 本 身 就 是 静 态 存 储 方 式,静 态 全 局 变 量 当 然 也 是 静 态 存 储 方 式。这 两 者 在 存 储 方 式 上 并 无 不 同。这 两 者 的 区 别 虽 在 于 非 静 态 全 局 变 量 的 作 用 域 是 整 个 源 程 序,当 一 个 源 程 序 由 多 个 源 文 件 组 成 时,非 静 态 的 全 局 变 量 在 各 个 源 文 件 中 都 是 有 效 的。而 静 态 全 局 变 量 则 限 制 了 其 作 用 域,即 只 在 定 义 该 变 量 的 源 文 件 内 有 效,在 同 一 源 程 序 的 其 它 源 文 件 中 不 能 使 用 它。由 于 静 态 全 局 变 量 的 作 用 域 局 限 于 一 个 源 文 件 内,只 能 为 该 源 文 件 内 的 函 数 公 用,因 此 可 以 避 免 在 其 它 源 文 件 中 引 起 错 误。从 以 上 分 析 可 以 看 出,把 局 部 变 量 改 变 为 静 态 变 量 后 是 改 变 了 它 的 存 储 方 式 即 改 变 了 它 的 生 存 期。把 全 局 变 量 改 变 为 静 态 变 量 后 是 改 变 了 它 的 作 用 域,限 制 了 它 的 使 用 范 围。s ta tic函 数 与 普 通 函 数 作 用 域 不 同。仅 在 本 文 件。只 在 当 前 源 文 件 中 使 用 的 函 数 应 该 说 明 为 内 部 函 数(static),内 部 函 数 应 该 在 当 前 源 文 件 中 说 明 和 定 义。对 于 可 在 当 前 源 文 件 以 外 使 用 的 函 数,应 该 在 一 个 头 文 件 中 说 明,要 使 用 这 些 函 数 的 源 文 件 要 包 含 这 个 头 文 件 static全 局 变 量 与 普 通 的 全 局 变 量 有 什 么 区 别:static全 局 变 量 只 初 使 化 一 次,防 止 在 其 他 文 件 单 元 中 被 引 用;static局 部 变 量 和 普 通 局 部 变 量 有 什 么 区 别:static局 部 变 量 只 被 初 始 化 一 次,下 一 次 依 据 上 一 次 结 果 值;static函 数 与 普 通 函 数 有 什 么 区 别:static函 数 在 内 存 中 只 有 一 份,普 通 函 数 在 每 个 被 调 用 中 维 持 一 份 拷 贝 2、程 序 的 局 部 变 量 存 在 于(堆 栈)中,全 局 变 量 存 在 于(静 态 区)中,动 态 申 请 数 据 存 在 于(堆)中。3、设 有 以 下 说 明 和 定 义:typedef union long i;int k5;char c;DATE;struct data int cat;DATE cow;double dog;too;DATE max;则 语 句 printf(%d,sizeof(struct date)+sizeof(max);的 执 行 结 果 是:_52答:DATE是 一 个 u nion,变 量 公 用 空 间.里 面 最 大 的 变 量 类 型 是 in t5,占 用 2 0个 字 节.所 以 它 的 大 小 是 20d ata是 一 个 stru ct,每 个 变 量 分 开 占 用 空 间.依 次 为 int4+DATE20+doubles=32.所 以 结 果 是 20+32=52.当 然 在 某 些 16位 编 辑 器 下,in t可 能 是 2 字 节,那 么 结 果 是 int2+DATE10+double8=204、队 列 和 栈 有 什 么 区 别?队 列 先 进 先 出,栈 后 进 先 出 5、写 出 下 列 代 码 的 输 出 内 容#includeint inc(int a)(retum(+a);)int multi(int*a,int*b,int*c)(retum(*c=*a*b);)typedef int(FUNCl)(int in);typedef int(FUNC2)(int*,int*,int*);void show(FUNC2 fun,int argl,int*arg2)(INCp=&inc;int temp=p(argl);fun(&temp,&argl,arg2);printf(H%dnn,*arg2);)main()(int a;show(multi,10,&a);return 0;答:1107、请 找 出 下 面 代 码 中 的 所 以 错 误 说 明:以 下 代 码 是 把 一 个 字 符 串 倒 序,如“abed”倒 序 后 变 为“deba”1、#includestring.h2 main()3、(4、char*src=Hhello,world;5、char*dest=NULL;6、int len=strlen(src);7、dest=(char*)malloc(len);8、char*d=dest;9、char*s=srclen;10 while(len!=0)11、d+=s-;12、printf(%s”,dest);13、return 0;14、)答:方 法 1:int main()char*sre=hello,world;int len=strlen(src);char*dest=(char*)maHoc(len+l);要 为 0 分 配 一 个 空 间 char*d=dest;char*s=&srclen-l;指 向 最 后 一 个 字 符 while(len!=0)*d+=*s-;*d=0;尾 部 要 加 0printf(%snH,dest);free(dest);使 用 完,应 当 释 放 空 间,以 免 造 成 内 存 汇 泄 露 return 0;)方 法 2:#include#include main()(char str=uhello,worldH;int len=strlen(str);char t;for(int i=0;ilen/2;i+)t=stri;stri=strlen-i-l;strlen-i-l=t;printf(,%sM,str);return 0;)1.-1,2,7,28,126请 问 2 8和 126中 间 那 个 数 是 什 么?为 什 么?第 一 题 的 答 案 应 该 是 4A3-1=63规 律 是 23-1(当 n 为 偶 数 O 2,4)2 3+1(当 n 为 奇 数 1,3,5)答 案:632.用 两 个 栈 实 现 个 队 列 的 功 能?要 求 给 出 算 法 和 思 路!设 2 个 栈 为 A,B,一 开 始 均 为 空.入 队:将 新 元 素 push入 栈 A;出 队:(1)判 断 栈 B 是 否 为 空;(2)如 果 不 为 空,则 将 栈 A 中 所 有 元 素 依 次 p o p出 并 push到 栈 B;(3)将 栈 B 的 栈 顶 元 素 p o p出;这 样 实 现 的 队 列 入 队 和 出 队 的 平 摊 复 杂 度 都 还 是 0(1),比 上 面 的 几 种 方 法 要 好。3.在 c 语 言 库 函 数 中 将 一 个 字 符 转 换 成 整 型 的 函 数 是 atool()吗,这 个 函 数 的 原 型 是 什 么?函 数 名:atol功 能:把 字 符 串 转 换 成 长 整 型 数 用 法:long atol(const char*nptr);程 序 例:#include#include int main(void)(long 1;char*str=98765432;1=atol(lstr);printf(string=%s integer=%ldn,str,1);return(O);)2.对 于 一 个 频 繁 使 用 的 短 小 函 数,在 C 语 言 中 应 用 什 么 实 现,在 C+中 应 用 什 么 实 现?c 用 宏 定 义,C+用 inline3.直 接 链 接 两 个 信 令 点 的 一 组 链 路 称 作 什 么?P P P点 到 点 连 接 4.接 入 网 用 的 是 什 么 接 口?5.voip都 用 了 那 些 协 议?6.软 件 测 试 都 有 那 些 种 类?黑 盒:针 对 系 统 功 能 的 测 试 白 合:测 试 函 数 功 能,各 函 数 接 口 7.确 定 模 块 的 功 能 和 模 块 的 接 口 是 在 软 件 设 计 的 那 个 队 段 完 成 的?概 要 设 计 阶 段 8.enum string(xl,x2,x3=10,x4,x5,x;问 x=0 x801005,0 x8010f4;9.unsigned char*pl;unsigned long*p2;pl=(unsigned char*)0 x801000;p2=(unsigned long*)0 x810000;请 问 p l+5=;p 2+5=;三.选 择 题:1.Ethtemet链 接 到 Internet用 到 以 下 那 个 协 议?A.HDLC;B.ARP;C.UDP;D.TCP;E.ID2.属 于 网 络 层 协 议 的 是:A.TCP;B.IP;C.ICMP;D.X,253.Windows消 息 调 度 机 制 是:A.指 令 队 列;B.指 令 堆 栈;C.消 息 队 列;D.消 息 堆 栈;4.unsigned short hash(unsigned short key)(retum(key)%256)请 问 hash(16),hash(256)的 值 分 别 是:A.1.16;B.8.32;C.4.16;D.1.32四.找 错 题:1.请 问 下 面 程 序 有 什 么 错 误?int al60Jl250Jl!000,i,j,k;for(k=0;k=1000;k+)for(j=0;j250;j+)for(i=0;i60;i+)aijk=0;把 循 环 语 句 内 外 换 一 下 2.#define Max_CB 500void LmiQueryCSmd(Struct MSgCB*pmsg)unsigned char ucCmdNum;for(ucCmdNum=0;ucCmdNumMax_GT_Length)(return GT_Length_ERROR;五.问 答 题:LIP Phone的 原 理 是 什 么?IPV62.TCP/IP通 信 建 立 的 过 程 怎 样,端 口 有 什 么 作 用?三 次 握 手,确 定 是 哪 个 应 用 程 序 使 用 该 协 议 3.1号 信 令 和 7 号 信 令 有 什 么 区 别,我 国 某 前 广 泛 使 用 的 是 那 一 种?4.列 举 5 种 以 上 的 电 话 新 业 务?微 软 亚 洲 技 术 中 心 的 面 试 题!1.进 程 和 线 程 的 差 别。线 程 是 指 进 程 内 的 一 个 执 行 单 元,也 是 进 程 内 的 可 调 度 实 体.与 进 程 的 区 别:(1)调 度:线 程 作 为 调 度 和 分 配 的 基 本 单 位,进 程 作 为 拥 有 资 源 的 基 本 单 位(2)并 发 性:不 仅 进 程 之 间 可 以 并 发 执 行,同 一 个 进 程 的 多 个 线 程 之 间 也 可 并 发 执 行(3)拥 有 资 源:进 程 是 拥 有 资 源 的 一 个 独 立 单 位,线 程 不 拥 有 系 统 资 源,但 可 以 访 问 隶 属 于 进 程 的 资 源.(4)系 统 开 销:在 创 建 或 撤 消 进 程 时,由 于 系 统 都 要 为 之 分 配 和 回 收 资 源,导 致 系 统 的 开 销 明 显 大 于 创 建 或 撤 消 线 程 时 的 开 销。2.测 试 方 法人 工 测 试:个 人 复 查、抽 查 和 会 审 机 器 测 试:黑 盒 测 试 和 白 盒 测 试 2.H eap与 stack的 差 别。H eap是 堆,stack是 栈。Stack的 空 间 由 操 作 系 统 自 动 分 配/释 放,H e a p上 的 空 间 手 动 分 配/释 放。Stack空 间 有 限,H eap是 很 大 的 自 由 存 储 区 C 中 的 m alloc函 数 分 配 的 内 存 空 间 即 在 堆 上,C+中 对 应 的 是 new操 作 符。程 序 在 编 译 期 对 变 量 和 函 数 分 配 内 存 都 在 栈 上 进 行,且 程 序 运 行 过 程 中 函 数 调 用 时 参 数 的 传 递 也 在 栈 上 进 行 3.Windows下 的 内 存 是 如 何 管 理 的?4.介 绍.N et和.N et的 安 全 性。5.客 户 端 如 何 访 问.N et组 件 实 现 Web Service?6.C/C+编 译 器 中 虚 表 是 如 何 完 成 的?7.谈 谈 C O M的 线 程 模 型。然 后 讨 论 进 程 内/外 组 件 的 差 别。8.谈 谈 IA 32下 的 分 页 机 制 小 页(4K)两 级 分 页 模 式,大 页(4M)一 级 9.给 两 个 变 量,如 何 找 出 一 个 带 环 单 链 表 中 是 什 么 地 方 出 现 环 的?一 个 递 增 一,一 个 递 增 二,他 们 指 向 同 一 个 接 点 时 就 是 环 出 现 的 地 方 10.在 IA 32中 一 共 有 多 少 种 办 法 从 用 户 态 跳 到 内 核 态?通 过 调 用 门,从 ring3到 ring。,中 断 从 ring3到 ring。,进 入 vm 86等 等 11.如 果 只 想 让 程 序 有 一 个 实 例 运 行,不 能 运 行 两 个。像 winamp-样,只 能 开 一 个 窗 口,怎 样 实 现?用 内 存 映 射 或 全 局 原 子(互 斥 变 量)、查 找 窗 口 句 柄.Find W indow,互 斥,写 标 志 到 文 件 或 注 册 表,共 享 内 存。.12.如 何 截 取 键 盘 的 响 应,让 所 有 的 a 变 成 b?键 盘 钩 子 SetWindowsHookEx13.Apartment在 C O M中 有 什 么 用?为 什 么 要 引 入?14.存 储 过 程 是 什 么?有 什 么 用?有 什 么 优 点?我 的 理 解 就 是 一 堆 s q l的 集 合,可 以 建 立 非 常 复 杂 的 查 询,编 译 运 行,所 以 运 行 一 次 后,以 后 再 运 行 速 度 比 单 独 执 行 SQ L快 很 多 15.Template有 什 么 特 点?什 么 时 候 用?16.谈 谈 Windows D N A结 构 的 特 点 和 优 点。网 络 编 程 中 设 计 并 发 服 务 器,使 用 多 进 程 与 多 线 程,请 问 有 什 么 区 别?1,进 程:子 进 程 是 父 进 程 的 复 制 品。子 进 程 获 得 父 进 程 数 据 空 间、堆 和 栈 的 复 制 品。2,线 程:相 对 与 进 程 而 言,线 程 是 一 个 更 加 接 近 与 执 行 体 的 概 念,它 可 以 与 同 进 程 的 其 他 线 程 共 享 数 据,但 拥 有 自 己 的 栈 空 间,拥 有 独 立 的 执 行 序 列。两 者 都 可 以 提 高 程 序 的 并 发 度,提 高 程 序 运 行 效 率 和 响 应 时 间。线 程 和 进 程 在 使 用 上 各 有 优 缺 点:线 程 执 行 开 销 小,但 不 利 于 资 源 管 理 和 保 护;而 进 程 正 相 反。同 时,线 程 适 合 于 在 SM P机 器 上 运 行,而 进 程 则 可 以 跨 机 器 迁 移。思 科1.用 宏 定 义 写 出 swap(x,y)#define swap(x,y)x=x+y;y=X-y;x=x-y;2.数 组 a N,存 放 了 1至 N-l个 数,其 中 某 个 数 重 复 次。写 一 个 函 数,找 出 被 重 复 的 数 字.时 间 复 杂 度 必 须 为。(N)函 数 原 型:int do_dup(int a,int N)3 一 语 句 实 现 x 是 否 为 2 的 若 干 次 幕 的 判 断 int i=512;cout boolalpha(i&(i-1)?false:true)endl;4.unsigned int intvert(unsigned int x,inl p,int n)实 现 对 x 的 进 行 转 换,p 为 起 始 转 化 位,n为 需 要 转 换 的 长 度,假 设 起 始 点 在 右 边.如 x=0b0001 000hp=4,n=3转 换 后 x=0b0110 0001unsigned int intvert(unsigned int x,int p,int n)unsigned int _t=0;unsigned int _a=1;for(int i=0;i n;+i)_t 1=_a;_a=_a 1;)=_ t p;x A=_t;return x;)慧 通:什 么 是 预 编 译 何 时 需 要 预 编 译:1、总 是 使 用 不 经 常 改 动 的 大 型 代 码 体。2、程 序 由 多 个 模 块 组 成,所 有 模 块 都 使 用 一 组 标 准 的 包 含 文 件 和 相 同 的 编 译 选 项。在 这 种 情 况 下,可 以 将 所 有 包 含 文 件 预 编 译 为 一 个 预 编 译 头。char*const p;char const*pconst char*p上 述 三 个 有 什 么 区 别?char*const p;常 量 指 针,p 的 值 不 可 以 修 改 char const*p;指 向 常 量 的 指 针,指 向 的 常 量 值 不 可 以 改 const char*p;和 char const*pchar strl=abcu;char str2lJ=abc;const char str3J=nabcn;const char str4=abc”;const char*str5=abc,;const char*str6=Mabcu;char*str7=abc;char*str8=abc;cout(strl=str2)endl;cout(str3=str4)endl;cout(str5=str6)endl;cout(str7=str8)endl;结 果 是:0 0 1 1解 答:strl,str2,str3,str4是 数 组 变 量,它 们 有 各 自 的 内 存 空 间;而 str5,str6,str7,str8是 指 针,它 们 指 向 相 同 的 常 量 区 域。1 2.以 下 代 码 中 的 两 个 sizeof用 法 有 问 题 吗?C易 void UpperCase(char str)/将 s t r中 的 小 写 字 母 转 换 成 大 写 字 母(for(size_t i=0;isizeof(str)/sizeof(str0);+i)if(av=stri&strlij=z)stri-=(R-A);)char str=naBcDen;cout str 字 符 长 度 为:sizeof(str)/sizeof(str0)endl;UpperCase(str);cout str endl;答:函 数 内 的 sizeof有 问 题。根 据 语 法,sizeof如 用 于 数 组,只 能 测 出 静 态 数 组 的 大 小,无 法 检 测 动 态 分 配 的 或 外 部 数 组 大 小。函 数 外 的 s tr是 一 个 静 态 定 义 的 数 组,因 此 其 大 小 为 6,函 数 内 的 s t r实 际 只 是 一 个 指 向 字 符 串 的 指 针,没 有 任 何 额 外 的 与 数 组 相 关 的 信 息,因 此 sizeof作 用 于 上 只 将 其 当 指 针 看,一 个 指 针 为 4 个 字 节,因 此 返 回 4。一 个 3 2位 的 机 器,该 机 器 的 指 针 是 多 少 位 指 针 是 多 少 位 只 要 看 地 址 总 线 的 位 数 就 行 了。80386以 后 的 机 子 都 是 3 2的 数 据 总 线。所 以 指 针 的 位 数 就 是 4 个 字 节 了。main()(int a5=1,2,3,4,5;int*ptr=(int*)(&a+l);printf(%d,%d,*(a+l),*(ptr-l);)输 出:2,5*(a+l)就 是 al,*(ptr-l)就 是 a4J,执 行 结 果 是 2,5&a+l不 是 首 地 址+1,系 统 会 认 为 加 一 个 a 数 组 的 偏 移,是 偏 移 了 一 个 数 组 的 大 小(本 例 是 5 个 int)int*ptr=(int*)(&a+l);则 p tr实 际 是&(a5),也 就 是 a+5原 因 如 下:&a是 数 组 指 针,其 类 型 为 int(*)5;而 指 针 加 1要 根 据 指 针 类 型 加 上 一 定 的 值,不 同 类 型 的 指 针+1之 后 增 加 的 大 小 不 同 a 是 长 度 为 5 的 in t数 组 指 针,所 以 要 加 5*sizeof(int)所 以 p tr实 际 是 a 但 是 p rt与(&a+l)类 型 是 不 一 样 的(这 点 很 重 要)所 以 prt-1只 会 减 去 sizeof(int*)a,&a的 地 址 是 一 样 的,但 意 思 不 一 样,a 是 数 组 首 地 址,也 就 是 a 的 地 址,&a是 对 象(数 组)首 地 址,a+1是 数 组 下 一 元 素 的 地 址,即 al,&a+l是 下 一 个 对 象 的 地 址,即 a5.1.请 问 以 下 代 码 有 什 么 问 题:int main()(char a;char*str=&a;strcpy(str,hello*);printf(str);return 0;没 有 为 s tr分 配 内 存 空 间,将 会 发 生 异 常 问 题 出 在 将 一 个 字 符 串 复 制 进 一 个 字 符 变 量 指 针 所 指 地 址。虽 然 可 以 正 确 输 出 结 果,但 因 为 越 界 进 行 内 在 读 写 而 导 致 程 序 崩 溃。char*s=MAAA;printf(M%sn,s);s0=B;printf(M%sn,s);有 什 么 错?“AAA是 字 符 串 常 量。s 是 指 针,指 向 这 个 字 符 串 常 量,所 以 声 明 s 的 时 候 就 有 问 题。cosnt char*s=HAAAu;然 后 又 因 为 是 常 量,所 以 对 是 s0的 赋 值 操 作 是 不 合 法 的。1、写 一 个“标 准”宏,这 个 宏 输 入 两 个 参 数 并 返 回 较 小 的 一 个。.#define Min(X,Y)(X)(Y)?(Y):(X)结 尾 没 有;2、嵌 入 式 系 统 中 经 常 要 用 到 无 限 循 环,你 怎 么 用 C 编 写 死 循 环。w h i l)或 者 for(;)3、关 键 字 static的 作 用 是 什 么?定 义 静 态 变 量 4、关 键 字 const有 什 么 含 意?表 示 常 量 不 可 以 修 改 的 变 量。5、关 键 字 volatile有 什 么 含 意?并 举 出 三 个 不 同 的 例 子?提 示 编 译 器 对 象 的 值 可 能 在 编 译 器 未 监 测 到 的 情 况 下 改 变。int(*s10)(int)表 示 的 是 什 么 啊 int(*s10J)(int)函 数 指 针 数 组,每 个 指 针 指 向 一 个 int func(int param)的 函 数。1.有 以 下 表 达 式:int a=248;b=4;int const c=21;const int*d=&a;int*const e=&b;int const*f const=&a;请 问 下 列 表 达 式 哪 些 会 被 编 译 器 禁 止?为 什 么?*c=32;d=&b;*d=43;e=34;e=&a;f=0 x321f;气 这 是 个 什 么 东 东,禁 止*d 说 了 是 c o n s t,禁 止 e=&a说 了 是 c o n s t禁 止 const*f const=&a;禁 止 2.交 换 两 个 变 量 的 值,不 使 用 第 三 个 变 量。即 a=3,b=5,交 换 之 后 a=5,b=3;有 两 种 解 法,种 用 算 术 算 法,一 种 用 人(异 或)a=a+b;b=a-b;a=a-b;ora=aAb;/只 能 对 int,char.b=aAb;a=aAb;ora A=b A=a;3.c和 C+中 的 struct有 什 么 不 同?c 和 C+中 struct的 主 要 区 别 是 c 中 的 struct不 可 以 含 有 成 员 函 数,而 C+中 的 struct可 以。C+中 struct和 class的 主:要 区 别 在 于 默 认 的 存 取 权 限 不 同,struct默 认 为 p u b lic,而 class默 认 为 private4.#include#include void getmemory(char*p)p=(char*)malloc(lOO);strcpy(p,nhello world*);)int main()(char*str=NULL;getmemory(str);printf(%s/nu,str);free(str);return 0;)程 序 崩 溃,getmemory中 的 m alloc不 能 返 回 动 态 内 存,free()对 str操 作 很 危 险 5.char szstr10;strcpy(szstr,0123456789);产 生 什 么 结 果?为 什 么?长 度 不 一 样,会 造 成 非 法 的 OS6.列 举 几 种 进 程 的 同 步 机 制,并 比 较 其 优 缺 点。原 子 操 作 信 号 量 机 制 自 旋 锁 管 程,会 合,分 布 式 系 统 7.进 程 之 间 通 信 的 途 径 共 享 存 储 系 统 消 息 传 递 系 统 管 道:以 文 件 系 统 为 基 础 1 1.进 程 死 锁 的 原 因 资 源 竞 争 及 进 程 推 进 顺 序 非 法 12.死 锁 的 4 个 必 要 条 件 互 斥、请 求 保 持、不 可 剥 夺、环 路 13.死 锁 的 处 理 鸵 鸟 策 略、预 防 策 略、避 免 策 略、检 测 与 解 除 死 锁 1 5.操 作 系 统 中 进 程 调 度 策 略 有 哪 几 种?FCFS(先 来 先 服 务),优 先 级,时 间 片 轮 转,多 级 反 馈 8.类 的 静 态 成 员 和 非 静 态 成 员 有 何 区 别?类 的 静 态 成 员 每 个 类 只 有 一 个,非 静 态 成 员 每 个 对 象 一 个 9.纯 虚 函 数 如 何 定 义?使 用 时 应 注 意 什 么?virtual void f()=0;是 接 口,子 类 必 须 要 实 现 10.数 组 和 链 表 的 区 别 数 组:数 据 顺 序 存 储,固 定 大 小 连 表:数 据 可 以 随 机 存 储,大 小 可 动 态 改 变 12.ISO的 七 层 模 型 是 什 么?tcp/udp是 属 于 哪 一 层?tcp/udp有 何 优 缺 点?应 用 层表 示 层 会 话 层 运 输 层 网 络 层 物 理 链 路 层 物 理 层 tcp/udp属 于 运 输 层 T C P服 务 提 供 了 数 据 流 传 输、可 靠 性、有 效 流 控 制、全 双 工 操 作 和 多 路 复 用 技 术 等。与 T C P不 同,U D P并 不 提 供 对 I P 协 议 的 可 靠 机 制、流 控 制 以 及 错 误 恢 复 功 能 等。由 于 U D P比 较 简 单,U D P头 包 含 很 少 的 字 节,比 T C P负 载 消 耗 少。tc p:提 供 稳 定 的 传 输 服 务,有 流 量 控 制,缺 点 是 包 头 大,冗 余 性 不 好 u d p:不 提 供 稳 定 的 服 务,包 头 小,开 销 小 1:(void*)p tr和(*(void*)ptr的 结 果 是 否 相 同?其 中 p tr为 同 一 个 指 针.(void*)ptr 和(*(void*)ptr 值 是 相 同 的 2:int main()(int x=3;printf(%d,x);return 1;)问 函 数 既 然 不 会 被 其 它 函 数 调 用,为 什 么 要 返 回 I?m ian中,c 标 准 认 为 0 表 示 成 功,非 0 表 示 错 误。具 体 的 值 是 某 中 具 体 出 错 信 息 1,要 对 绝 对 地 址 0 x100000赋 值,我 们 可 以 用(unsigned int*)0 x 100000=1234;那 么 要 是 想 让 程 序 跳 转 到 绝 对 地 址 是 0 x100000去 执 行,应 该 怎 么 做?*(void(*)()0 x100000)();首 先 要 将 0 x100000强 制 转 换 成 函 数 指 针,即:(void(*)()0 x100000然 后 再 调 用 它:*(void(*)0)0 x100000)();用 typedef可 以 看 得 更 直 观 些:typedef void(*)()voidFuncPtr;*(voidFuncPtr)0 x 100000)();2,已 知 一 个 数 组 ta b le,用 一 个 宏 定 义,求 出 数 据 的 元 素 个 数#define NTBL#define NTBL(sizeof(table)/sizeof(tableOJ)面 试 题:线 程 与 进 程 的 区 别 和 联 系?线 程 是 否 具 有 相 同 的 堆 栈?d ll是 否 有 独 立 的 堆 栈?进 程 是 死 的,只 是 一 些 资 源 的 集 合,真 正 的 程 序 执 行 都 是 线 程 来 完 成 的,程 序 启

    注意事项

    本文(一些c和c笔试题.pdf)为本站会员(奔***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开