1 简单的c程序 first.c
#include <stdio.h>
int main(void) /* 一个简单的C程序 */
{
int num; /* 定义一个名为num的变量 */
num = 1; /* 为num赋一个值 */
printf("I am a simple "); /* 使用printf函数 */
printf("computer.\n");
printf("My favorite number is %d because it is first.\n", num);
getchar();
return 0;
}
程序细节:
#include <stdio.h> 指令和头文件
main() 主函数
注意,main() 函数的返回值是传递给操作系统,用于判断程序是否执行成功。
注释
/* 这是一条注释 */
// 这也是一条注释
函数体、块
变量声明
注意:1 标准C中,变量声明必须要在块的顶部;C99和C11允许在任何位置声明变量;
2 首次使用变量前,一定要先声明;
C99和C11规定:
变量命名:
1 C99和C11编译器,只能识别前63个字符,超出部分将被忽略;
2 减少使用 _ 或者 __ 开头的变量,如 _thread,原因是操作系统中经常使用这类变量,要避免重名;
3 变量命名区分大小写;
赋值
声明变量,相当于申请内存;赋值是给这个内存单元确定值(内存的初始值是不确定的);
打印
返回值
仅在main()函数中,如果没有return 语句,会在结尾处返回0(可以省略main中的return 但很不好);其他带返回值函数都不行
2 进一步使用C
two_fun.c
#include <stdio.h>
void butler(void); /* ANSI/ISO 函数原型 */
int main(void)
{
printf("I will summon the bulter function.\n");
butler();
printf("Yes. Bring me some tea and writeable DVDs.\n");
getchar();
return 0;
}
void butler(void) /* 函数定义开始 */
{
printf("You rang, Sir?\n");
}
C标准建议,要为程序中所有用到的函数提供函数原型。如果我们使用到的是 static 函数,即使不能被其他文件调用,也应该在当前源文件中进行声明。
关键词
这里面,在嵌入式中开发非常常用的有,typedef enum volatile。