软件工程师手册/语言词典/C
在这里寻找 C 的故事
C 是一种完整的过程式语言。
可执行文件从 main() 方法开始。
典型的语句以分号结尾。要将 b 赋值给 a,使用
a = b;
块注释以 /* 开始,以 */ 结束。它们可以跨越多行。
/*
* this is a block comment
*/
声明需要出现在作用域的顶部。
将 i 声明为整数
int i;
将 i 声明为整数并将其初始值设置为 0
int i = 0;
方法通过指定方法的接口来声明。
return_type function_name(argument_1_type arg_1_name,
argument_2_type arg_2_name);
方法实现重复了许多相同的信息
return_type function_name(argument_1_type arg_1_name,
argument_2_type arg_2_name)
{
// work with arg_1_name, arg_2_name, and default_arg_name
// depending on the argument types the variables are passed by
// value, reference, or are constant
// don't forget to return something of the return type
return 36;
}
作用域由大括号定义。
{ // this the beginning of a scope
// the scope is about to end
}
当且仅当 A 等于 B 时,将 C 赋值给 D,否则,将 E 赋值给 F。
if (A == B)
{
D = C;
// more code can be added here. It is used if and only if A is equal to B
}
else
{
F = E;
// more code can be added here. It is used if and only if A is not equal to B
}
或者
if (A == B)
D = C; //more lines of code are not permitted after this statement
else
F = E;
或者,可以使用 switch 语句进行多选操作。此示例将数字输入转换为文本。
switch (number_value)
{
case 37:
text = "thirty-seven";
break; // this line prevents the program from writing over this value with the
// following code
case 23:
text = "twenty-three";
break;
default: // this is used if none of the previous cases contain the value
text = "unknown number";
}
此代码从 0 到 9 进行计数,并将数组的内容加起来。
int i = 0;
for (int index = 0; index < 10; index = index + 1)
{
i = array[index];
}
此代码重复执行,直到找到数字 4。如果它运行到数组的末尾,则可能存在问题。
int index = 0;
while (4 != array[index])
{
index = index + 1;
}
此代码在进行检查之前递增计数器,因此它从元素 1 开始。
int index = 0;
do
{
index = index + 1;
}
while (4 != array[index]);
printf ("%s","Hello world!\n");
struct
实现您自己的算法,或者找到一个库。
垃圾回收是手动进行的。
通常,接口在头文件中(通常为 *.h)或实现代码之上定义。实现文件通常命名为 *.c。有用的类集合可以编译成库,通常为 *.dll、*.a 或 *.so,这些库可以编译成可执行文件(静态链接)或动态使用(动态链接)。
不要混淆这两者
= // assignment == // comparison, is equal to
通常,使用你不想要的那个会编译,并会产生你没有预料到的结果。
一个好的做法是编写; if(CONSTANT == variable) 而不是 if(variable == CONSTANT),因为编译器会捕获; if(CONSTANT = variable) 而不是 if(variable = CONSTANT)。
使用一个能够生成大量有帮助警告的编译器,即使代码是有效的。您也可以使用诸如'lint'之类的程序。这将帮助您避免诸如上述“if ( x = 1 )”而不是“if ( x == 1 )”之类的简单错误。
数组从索引 0 开始。
列出网络上的其他参考资料。请包括这些参考资料适合的读者级别。(初学者/中级/高级)
需要参考资料
C 编程语言:(示例链接:http://cm.bell-labs.com/cm/cs/cbook/ )