zoukankan      html  css  js  c++  java
  • #include <stdio.h>

    1 fflush

    2 fgetc

    3 fgets

    4 fprintf

    5 fputc

    6 fputs

    7 fscanf

    8 fseek

    9 ftell

    10 perror

    11 remove

    12 rename

    13 sprintf

    14 sscanf

    15 system

    1 fflush

    函数名: fflush

    功能: 清除读写缓冲区,需要立即把输出缓冲区的数据进行物理写入时

    头文件:stdio.h

    原型:int fflush(FILE *stream)

    其中stream是要冲洗的流

    2 fgetc

    fgetc可以从任何文件获取一个字符

    getchar()只是fgetc特例

    格式:int fgetc(FILE *stream);

    这个函数的返回值,是返回所读取的一个字节。如果读到文件末尾或者读取出错时返回EOF。

    3 fgets

    fgets可以从任何文件获取一个字符串,stdin代表键盘

    函数原型

    char *fgets(char *buf, int bufsize, FILE *stream);

    参数

    *buf: 字符型指针,指向用来存储所得数据的地址。

    bufsize: 整型数据,指明存储数据的大小。

    *stream: 文件结构体指针,将要读取的文件流。

    返回值

    成功,则返回第一个参数buf;

    在读字符时遇到end-of-file,则eof指示器被设置,如果还没读入任何字符就遇到这种情况,则buf保持原来的内容,返回NULL;

    如果发生读入错误,error指示器被设置,返回NULL,buf的值可能被改变。

    4 fprintf

    显示器可以当作一个文件来操作,fprintf可以输出到任何文件

    printf就是fprintf的特例,只能输出到屏幕

    int fprintf (FILE* stream, const char*format, [argument])

    FILE*stream:文件指针

    const char* format:输出格式

    [argument]:附加参数列表

     1 #define _CRT_SECURE_NO_WARNINGS
     2 
     3 #include<stdio.h>
     4 #include<stdlib.h>
     5 
     6 main()
     7 {
     8     char str[100] = { 0 };
     9 
    10     fscanf(stdin, "%s", str);
    11 
    12     fprintf(stdout, "str=%s
    ", str);
    13 
    14     system("pause");
    15 }

    5 fputc

    putchar只是fputc的特例,putchar是显示器输出

    fputc可以输出任何文件,显示器只是其中一种stdout

    函数名称:写字符文件函数fputc()

    函数格式:int fputc (char c, File *fp)

    参数解释:fp为文件指针,它的值是执行fopen()打开文件时获得的。

    n为输出的字符量。 虽然函数被定义为整形数,但仅用其低八位。

    返回值:在正常调用情况下,函数返回写入文件的字符的ASCII码值,出错时,返回EOF(-1)。当正确写入一个字符或一个字节的数据后,文件内部写指针会自动后移一个字节的位置。EOF是在头文件 stdio.h中定义的宏。

    6 fputs

    puts只是fputs的特例,puts是显示器输出

    fputs可以输出任何文件,显示器只是其中一种stdout

    参数: str是字符型指针,可以是字符串常量,或者存放字符串的数组首地址。

    通过打开文件函数fopen()获得的。

    fputs函数的功能是向指定的文件写入一个字符串,其调用形式为: fputs(字符串,文件指针) 其中字符串可以是字符串常量,也可以是字符数组名, 或指针 变量

    7 fscanf

    fscanf可以扫描任何文件,不仅仅是键盘

    scanf是fscanf的特例

    函数名: fscanf

    功 能: 从一个流中执行格式化输入,fscanf遇到空格和换行时结束,注意空格时也结束。这与fgets有区别,fgets遇到空格不结束。

    返回值:整型,成功返回读入的参数的个数,失败返回EOF(-1)。

    用法:

    1 int fscanf(FILE*stream,constchar*format,[argument...]);

    FILE *stream:文件指针

    char *format:格式字符串

    [argument...]:输入列表

    8 fseek

    用法

    int fseek(FILE *stream, long offset, int fromwhere);

    描述

    函数设置文件指针stream的位置。如果执行成功,stream将指向以fromwhere(偏移起始位置:文件头0(SEEK_SET),当前位置1(SEEK_CUR),文件尾2(SEEK_END))为基准,偏移offset(指针偏移量)个字节的位置。如果执行失败(比如offset超过文件自身大小),则不改变stream指向的位置。

    9 ftell

    用于得到文件位置指针当前位置相对于文件首的偏移字节数。

    函数原型

    long ftell(FILE *stream);

    函数功能

    使用fseek函数后再调用函数ftell()就能非常容易地确定文件的当前位置。

     1 #define _CRT_SECURE_NO_WARNINGS
     2 
     3 #include<stdio.h>
     4 #include<stdlib.h>
     5 
     6 main()
     7 {
     8     char path[100] = "E:\1.txt";
     9 
    10     FILE *pf = fopen(path, "rb");
    11 
    12     if (pf == NULL)
    13     {
    14         printf("fail");
    15         perror("error");
    16     }
    17     else
    18     {
    19         //定位文件指针到尾部
    20         fseek(pf, 0, SEEK_END);//定位到文件的末位,偏移量为0
    21 
    22         int length = ftell(pf);//获取文件的长度
    23 
    24         if (length == -1)
    25         {
    26             printf("计算文件长度失败");
    27         }
    28         else
    29         {
    30             printf("当前文件有%d个字节", length);
    31         }
    32 
    33         fclose(pf);
    34     }
    35 
    36     system("pause");
    37 }

    10 perror

    perror(s) 用来将上一个函数发生错误的原因输出到标准设备(stderr)。参数 s 所指的字符串会先打印出,后面再加上错误原因字符串。此错误原因依照全局变量errno(这里的说法不准确,errno是一个宏,该宏返回左值) 的值来决定要输出的字符串。

    在库函数中有个errno变量,每个errno值对应着以字符串表示的错误类型。当你调用"某些"函数出错时,该函数已经重新设置了errno的值。perror函数只是将你输入的一些信息和现在的errno所对应的错误一起输出。

     1 #define _CRT_SECURE_NO_WARNINGS
     2 
     3 #include<stdio.h>
     4 #include<stdlib.h>
     5 
     6 main()
     7 {
     8     char path[80] = "E:\1.txt";
     9 
    10     FILE *pf = fopen(path, "w");//创建文件指针,用fopen的返回值赋值
    11     //fopen按照写的模式,打开路径对应的文件
    12 
    13     if (pf == NULL)
    14     {
    15         printf("fail");
    16         perror("输出的错误是");
    17     }
    18 
    19     //fputs("hello world", pf);//写入了一个空指针会触发中断
    20 
    21     //如果一个文件指针为空,不能写入,不能关闭
    22 
    23     //fclose(pf);//关闭文件
    24     
    25     system("pause");
    26 }

    11 remove

    功能: 删除一个文件,相当于unlink函数,但是如果它的filename参数是一个目录的话,其作用就相当于rmdir函数。

    用法: int remove(const char *filename); remove函数图片 remove函数图片 头文件:在Visual C++ 6.0中可以用stdio.h也可以用io.h,前者更普遍。

    返回值:如果删除成功,remove返回0,否则返回EOF(-1)。

     1 #define _CRT_SECURE_NO_WARNINGS
     2 
     3 #include<stdio.h>
     4 #include<stdlib.h>
     5 
     6 main()
     7 {
     8     char *filename = "E:\1.txt";
     9 
    10     int res = remove(filename);
    11 
    12     printf("%d", res);
    13 
    14     if (res == 0)
    15     {
    16         printf("删除成功");
    17     }
    18     else
    19     {
    20         printf("删除失败");
    21     }
    22 
    23     system("pause");
    24 }

    12 rename

    把文件、文件夹重命名

    把文件重命名

     1 #define _CRT_SECURE_NO_WARNINGS
     2 
     3 #include<stdio.h>
     4 #include<stdlib.h>
     5 
     6 main()
     7 {
     8     char oldname[100] = "E:\3.txt";
     9     char newname[100] = "E:\1\4.txt";
    10     //如果不在同一文件夹,就剪切过来,然后重命名
    11 
    12     if (rename(oldname, newname) == 0)
    13     {
    14         printf("重命名成功");
    15     }
    16     else
    17     {
    18         printf("重命名失败");
    19     }
    20 
    21     system("pause");
    22 }

    把文件夹重命名

     1 #define _CRT_SECURE_NO_WARNINGS
     2 
     3 #include<stdio.h>
     4 #include<stdlib.h>
     5 
     6 main()
     7 {
     8     char oldname[100] = "E:\1";
     9     char newname[100] = "E:\2";
    10     //如果不在同一文件夹,就剪切过来,然后重命名
    11 
    12     if (rename(oldname, newname) == 0)
    13     {
    14         printf("重命名成功");
    15     }
    16     else
    17     {
    18         printf("重命名失败");
    19     }
    20 
    21     system("pause");
    22 }

    13 sprintf

    功能 把格式化的数据写入某个字符串缓冲区。

    头文件 stdio.h

    原型 int sprintf( char *buffer, const char *format, [ argument] … );

    参数列表 buffer:char型指针,指向将要写入的字符串的缓冲区。 format:格式化字符串。 [argument]...:

    可选参数,可以是任何类型的数据。

    返回值 返回写入buffer 的字符数,出错则返回-1. 如果 buffer 或 format 是空指针,且不出错而继续,函数将返回-1,并且 errno 会被设置为 EINVAL。 sprintf 返回被写入buffer 的字节数,结束字符‘’不计入内。即,如果“Hello”被写入空间足够大的buffer后,函数sprintf 返回5。

     1 #define _CRT_SECURE_NO_WARNINGS
     2 
     3 #include<stdio.h>
     4 #include<stdlib.h>
     5 
     6 main()
     7 {
     8     char str1[100] = "note";
     9 
    10     char str2[100] = "pad";
    11 
    12     char str[100];
    13 
    14     sprintf(str, "%s%s", str1, str2);
    15 
    16     puts(str);
    17     
    18     system("pause");
    19 }

    14 sscanf

    int sscanf(const char *buffer,const char *format,[argument ]...);

    buffer存储的数据

    format格式控制字符串

    argument 选择性设定字符串

    sscanf会从buffer里读进数据,依照format的格式将数据写入到argument里。

     1 #define _CRT_SECURE_NO_WARNINGS
     2 
     3 #include <stdio.h>
     4 #include <stdlib.h>
     5 
     6 main()
     7 {
     8     char str[100] = "i have 1000 yuan";
     9     int num;
    10 
    11     sscanf(str, "i have %d yuan", &num);
    12 
    13     printf("%d", num);
    14     
    15     system("pause");
    16 }

    15 system

    calc计算器

    system("start calc");并行打开计算器,即同时打开计算器

     1 #include<stdio.h>
     2 
     3 main()
     4 {
     5     int i;
     6 
     7     for (i = 0; i < 10; i++)
     8     {
     9         system("start calc");
    10     }
    11 }

    ipconfig查看IP配置

    mspaint画图

    notepad记事本

    pause暂停

    system("pause");

    system("pause")可以实现冻结屏幕,便于观察程序的执行结果;system("CLS")可以实现清屏操作。而调用color函数可以改变控制台的前景色和背景,具体参数在下面说明。

    tasklist查看所有进程

    taskkill结束某个进程

    通过名称结束进程

    1 void closebyname(const char *name)
    2 {
    3     char cmdstr[100] = { 0 };
    4     sprintf(cmdstr, "taskkill /f /im %s", name);
    5     system(cmdstr);
    6 }

    通过PID结束进程

    1 void closebypid(const int num)
    2 {
    3     char cmdstr[100] = { 0 };
    4     sprintf(cmdstr, "taskkill /pid %d", num);
    5     system(cmdstr);
    6 }
  • 相关阅读:
    Codeforces Round #598 (Div. 3)(全)
    Codeforces Round #597 (Div. 2) F
    Codeforces Round #597 (Div. 2) D Shichikuji and Power Grid (MST)
    ACM bitset
    Codeforces Round #592 (Div. 2) E. Minimizing Difference
    Educational Codeforces Round 74 (Rated for Div. 2)D. AB-string
    Educational Codeforces Round 74 (Rated for Div. 2) tandard Free2play
    2018南昌邀请赛网络赛 单调栈 I
    rmq问题
    poj 3259Wormholes
  • 原文地址:https://www.cnblogs.com/denggelin/p/5507233.html
Copyright © 2011-2022 走看看