1.#include <stdio.h>   //头文件.h    printf("%d 的阶乘为 %f\n", i, factorial(i));  当上面的代码被编译和执行时,它会产生下列结果: 15 的阶乘为 1307674368000.000000

  int main( )

  {       

      printf( "hello world");

      return 0;

  }

2.整数常量可以是十进制、八进制或十六进制的常量。前缀指定基数:0x 0X 表示十六进制,0 表示八进制,不带前缀则默认表示十进制。整数常量也可以带一个后缀,后缀是 U L 的组合,

    U 表示无符号整数(unsigned),L 表示长整数(long)。后缀可以是大写,也可以是小写,U L 的顺序任意。

3.1.strcpy(s1, s2); 复制字符串 s2 到字符串 s12 strcat(s1, s2); 连接字符串 s2 到字符串 s1 的末尾。 3 strlen(s1);返回字符串 s1 的长度。 4 strcmp(s1, s2);如果 s1 s2 是相同的,

    则返回 0;如果 s1<s2 则返回小于 0;如果 s1>s2 则返回大于 05 strchr(s1, ch);返回一个指针,指向字符串 s1 中字符 ch 的第一次出现的位置。6 strstr(s1, s2);

    返回一个指针,指向字符串 s1 中字符串 s2 的第一次出现的位置。

4.#define C 指令,用于为各种数据类型定义别名,与 typedef 类似,但是它们有以下几点不同:

  typedef 仅限于为类型定义符号名称,#define 不仅可以为类型定义别名,也能为数值定义别名,比如您可以定义 1 ONE

  typedef 是由编译器执行解释的,#define 语句是由预编译器进行处理的。

5. 打开文件 FILE *fopen( const char * filename, const char * mode );

     关闭文件 int fclose( FILE *fp );如果成功关闭文件,fclose( ) 函数返回零,如果关闭文件时发生错误,函数返回 EOF

     写入文件 int fputc( int c, FILE *fp );函数 fputc() 把参数 c 的字符值写入到 fp 所指向的输出流中。如果写入成功,它会返回写入的字符,如果发生错误,则会返回 EOF

     int fputs( const char *s, FILE *fp );函数 fputs() 把字符串 s 写入到 fp 所指向的输出流中。如果写入成功,它会返回一个非负值,如果发生错误,则会返回 EOF

     int fprintf(FILE *fp,const char *format, ...) 函数来写把一个字符串写入到文件中

     读取文件 int fgetc( FILE * fp ); fgetc() 函数从 fp 所指向的输入文件中读取一个字符。返回值是读取的字符,如果发生错误则返回 EOF

     char *fgets( char *buf, int n, FILE *fp );函数 fgets() fp 所指向的输入流中读取 n - 1 个字符。它会把读取的字符串复制到缓冲区 buf,并在最后追加一个 null 字符来终止字符串

     int fscanf(FILE *fp, const char *format, ...) 函数来从文件中读取字符串,但是在遇到第一个空格和换行符时,它会停止读取。

6.C 预处理器(C Preprocessor)简写为 CPP

  #define 定义宏

  #include 包含一个源代码文件

  #undef 取消已定义的宏

  #ifdef 如果宏已经定义,则返回真

  #ifndef 如果宏没有定义,则返回真

  #if 如果给定条件为真,则编译下面代码

  #else #if 的替代方案

  #elif 如果前面的 #if 给定条件不为真,当前条件为真,则编译下面代码

  #endif 结束一个 #if……#else 条件编译块

  #error 当遇到标准错误时,输出错误消息

  #pragma 使用标准化方法,向编译器发布特殊的命令到编译器中

7.ANSI C 定义了许多宏

  __DATE__ 当前日期,一个以 "MMM DD YYYY" 格式表示的字符常量。

  __TIME__ 当前时间,一个以 "HH:MM:SS" 格式表示的字符常量。

  __FILE__ 这会包含当前文件名,一个字符串常量。

  __LINE__ 这会包含当前行号,一个十进制常量。

  __STDC__ 当编译器以 ANSI 标准编译时,则定义为 1

8.预处理器运算符 #define运算符

  宏延续运算符(\#define  message_for(a, b)  \

      printf(#a " and " #b ": We love you!\n")

     字符串常量化运算符(#) 当需要把一个宏的参数转换为字符串常量时,则使用字符串常量化运算符(#)。在宏中使用的该运算符有一个特定的参数或参数列表

     标记粘贴运算符(##)    宏定义内的标记粘贴运算符(##)会合并两个参数。它允许在宏定义中两个独立的标记被合并为一个标记

     #define 可以当方法用

     #define square(x) ((x) * (x))   

     #define MAX(x,y) ((x) > (y) ? (x) : (y))

    9.引用头文件的语法 使用预处理指令 #include 可以引用用户和系统头文件。它的形式有以下两种:

  #include <file>

    这种形式用于引用系统头文件。它在系统目录的标准列表中搜索名为 file 的文件。在编译源代码时,您可以通过 -I 选项把目录前置在该列表前。

  #include "file"

    这种形式用于引用用户头文件。它在包含当前文件的目录中搜索名为 file 的文件。在编译源代码时,您可以通过 -I 选项把目录前置在该列表前

  只引用一次头文件:

  #ifndef HEADER_FILE

  #define HEADER_FILE

  the entire header file file;

  #endif

  有条件引用:

  #if SYSTEM_1

     # include "system_1.h"

  #elif SYSTEM_2

     # include "system_2.h"

  #elif SYSTEM_3

     ...

  #endif

10. C 语言提供了 perror() strerror() 函数来显示与 errno 相关的文本消息。

  perror() 函数显示您传给它的字符串,后跟一个冒号、一个空格和当前 errno 值的文本表示形式。

  strerror() 函数,返回一个指针,指针指向当前 errno 值的文本表示形式。

11.格式说明由“%”和格式字符组成 格式字符有d,o,x,u,c,s,f,e,g等。

    如%d整型输出,%ld长整型输出,%o以八进制数形式输出整数,%x以十六进制数形式输出整数,或输出字符串的地址。

  %u以十进制数输出unsigned型数据(无符号数)。注意:%d%u有无符号的数值范围,也就是极限的值,不然数值打印出来会有误。

  %.2f用来输出实数,保留小数点2位。 %e以指数形式输出实数。 %g根据大小自动选f格式或e格式,且不输出无意义的零。

  %d int   %f float   %e double

12.常用函数:

       sizeof(int num); 字节大小

       scanf("%f",&number);屏幕输入

       printf("%f",number);屏幕输出

       sqrt(number);计算一个非负实数的平方根

       pow(x,y);xy次方的值

       putchar(int char) 把参数 char 指定的字符(一个无符号字符)写入到标准输出 stdout

 

注意:函数参考查找C标准库,C标准库是一组C内置函数、常量和头文件,比如 <stdio.h><stdlib.h><math.h>,等等。这个标准库可以作为 C 程序员的参考手册。

posted on 2020-01-09 10:37  _萧朗  阅读(239)  评论(0编辑  收藏  举报