C和指针阅读第一天

一、命名规范和空白

推荐阅读

1. Google C++ Style Guide。谷歌的 C++ 编程规范,在国内有较大影响力,是企业级规范,对代码的具体样式有细致的规定,可直接采用。

2. MISRA C/C++。在嵌入式开发领域有较高认可度,是行业级规范,企业可直接采用。

 请观察一下缩进是如何是程序结构显得更为清晰的。

int n_columns; /*进行处理的列标号*/
int colums[MAX_COLS]; /*需要处理的列数*/
char input[MAX_INPUT]; /*容纳输入行的数组*/
char ouput[MAX_INPUT]; /*容纳输出行的数组*/

   这里声明了4个变量:一个标准标量,一个整型数组以及两个字符数组。所有4个变量都main函数的局部变量,其他函数不能根据他们的名字访问它们。当然,他们可以作为参数传递给其它函数   

二、预处理指令

#include <stdio.h>
#include <string.h>
#define MAX_COLS 20

这样的代码称为预处理指令,因为他们是通过预处理器解析的。预处理器读入源代码,根据预处理指令对其进行修改,然后把修改过的源代码递交给编译器。这里预处理器使用名叫stdio.h的库函数头文件的内容替换第1条#include指令语句,其结果就仿佛是stdio.h的内容被逐字逐句写到源文件的那个位置。

头文件使我们可以访问标准 I/0库(Standard I/O Library)中的函数,这组函数用于执行输入和输出。stdio.h头文件定义了EXITD_SUCCESS和EXIT_FAILURE符号。

         提示:

         另一种预处理指令是#define,它把名字MAX_COL定义为20,当这个名字以后出现再原文件的任何地方的时候,它都会被替换成被定义的值。可以方便进行全局替换!

三、函数原型

int read_column_numbers(int columns[], int max);

void rearrange(char *output,char const *input,int n_colums,int const columns[]);

        这些声明被称为函数原型。它们告诉编译器这些以后将在源文件中定义的函数的特征。这样,当这些函数被调用的时,编译器就能对它们进行准确性检查。每个原型以一个类型名开头,表示函数返回值的类型。

四、main 函数

      

int main(void )
{

}

       这几行代码构成了main函数定义的起始部分。每个C/C++程序都必须有一个main 函数,因为它是程序执行的起点。关键字int表示函数返回一个整形值;关键字void表示函数不接受任何参数。

五、printf 函数打印输出

      printf函数执行格式化的输出。C语言的格式化输出比较简单,printf函数接收多个参数值,其中第一个参数是一个字符串,描述的是输出格式。剩下的参数就是需要打印的值。

 

 

总结:

       所有的C程序必须有一个main函数,它是程序的执行的起点。函数的标量参数通过传值的方式进行传递,而数组名参数则具有传址调用的语句。  printf函数执行格式化输出。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值