小编所收集到的相关计算机二级C语言常见问题:ANSI/ISO标准C的资料 大家要认真阅读哦!
问题列表:
1 什么是“ANSI C 标准”?
2 我如何得到一份标准的副本?
3 我在哪里可以找到标准的更新?
4 很多ANSI 编译器在遇到以下代码时都会警告类型不匹配。
extern int func(float); int func(x) float x; { ...
5 能否混用旧式的和新型的函数语法?
6 为什么声明extern int f(struct x *p); 报出了一个奇怪的警告信息“结构x 在参数列表中声明”?
7 我不明白为什么我不能象这样在初始化和数组维度中使用常量:
const int n = 5; int a[n];
8 既然不能修改字符串常量, 为什么不把它们定义为字符常量的数组?
9 “const char *p” 和“char * const p” 有何区别?
10 为什么我不能向接受const char ** 的函数传入char **?
怎样正确声明main()?
12 我能否把main() 定义为void, 以避免扰人的“main无返回值”警告?
13 可main() 的第三个参数envp 是怎么回事?
14 我觉得把main() 声明为void 不会失败, 因为我调用了exit()而不是return , 况且我的操作系统也忽略了程序的退出/返回状态。
15 那么到底会出什么问题?真的有什么系统不支持void main()吗?
16 我一直用的那本书《熟练傻瓜C语言》总是使用void main() 。
17 从main() 中, exit(status) 和返回同样的status 真的等价吗?
18 我试图用ANSI “字符串化” 预处理操作符# 向信息中插入符号常量的值, 但它字符串化的总是宏的名字而不是它的值。
19 警告信息“warning: macro replacement within a string literal” 是什么意思?
20 在我用#ifdef 去掉的代码里出现了奇怪的语法错误。
21 #pragma 是什么, 有什么用?
22 “#pragma once” 是什么意思?我在一些头文件中看到了它。
23 a[3] = "abc"; 合法吗?它是什么意思?
24 为什么我不能对void* 指针进行运算?
25 memcpy() 和memmove() 有什么区别?
26 malloc(0) 有什么用?返回一个控指针还是指向0 字节的指针?
27 为什么ANSI 标准规定了外部标示符的长度和大小写限制?
28 我的编译对最简单的测试程序报出了一大堆的语法错误。
29 为什么有些ASNI/ISO 标准库函数未定义?
30 谁有把旧的C 程序转化为ANSI C 或相反的工具, 或者自动生成原型的工具?
31 为什么声称兼容ANSI 的Frobozz Magic C 编译器不能编译这些代码?
32 人们好像有些在意实现定义(implementation-defin-ed) 、未明确(unspecified) 和无定义(undefined) 行为的区别。它们的区别到底在哪里?
33 一个程序的“合法”, “ 有效” 或“符合” 到底是什么意思?
34 我很吃惊, ANSI 标准竟然有那么多没有定义的东西。标准的唯一任务不就是让这些东西标准化吗?
35 有人说i = i++ 的行为是未定义的, 但是我刚在一个兼容ANSI的编译器上测试, 得到了我希望的结果。
小编为大家整理,就是希望大家能够避过这些常见问题,大家一定要注意哦!
继续了解计算机二级C语言?点击下方链接,进入考无忧官方网站,更多精彩等你来!
小编特别推荐二级ms office可以了解一下噢! 毕竟这项科目着实相比其他科目比较容易啦!
文章推荐:
温馨提示:
想要了解更多试题请点击查看>>>计算机二级考试题库
考试想拿高分吗?更多二级ms office试题请点击查看>>>二级ms office
想知道更多关于计算机等级考试的最新资讯吗?点击进入>>>计算机等级考试