3.1 字符串操作

来源:互联网 发布:c语言冒泡排序 编辑:程序博客网 时间:2024/06/06 18:17

1. 单字符输入输出

1.1 putchar

  • int putchar(int c)
  • 向标准输出 写一个字符
  • 返回写了几个字符,EOF(-1)表示写失败

1.2 getchar

  • int getchar(void);
  • 从标准输入 读入一个字符
  • 出错返回EOF(-1)
  • 停止输入
    • Windows:Ctrl + Z
    • Unix:Ctrl + D
      Ctrl + C 是退出运行的程序
#include<stdio.h>int main(int argc, char const *argv[]){    int ch;    while((ch = getchar()) != EOF){        putchar(ch);    }    printf("---------over\n");    return 0;}

这里写图片描述

键盘输入字符,通过shell传给电脑内部做运算,当输入 Ctrl + C 或 Ctrl + Z 时,shell拦截并做对应处理

2. 字符串数组

  • char **a
    • a是一个指针,指向另一个指针,那个指针指向一个字符(串)
  • char a[][]
  • char *a[] 是存储大小不确定的数组,a[0]指向一个区域,存储大小不确定
#include<stdio.h>int main(int argc, char const *argv[]){    // [Error] declaration of 'a' as multidimensional array must have bounds for all dimensions except the first    // 多维数组 除了第一个,要指定大小 //  char a[][] = {//      "Hello",//  };    // a[0] 存储的是 Hello\0     char a[][10] = {        "Hello",    };    // [Error] initializer-string for array of chars is too long [-fpermissive]    // 定义一个数组 b[][10],每个元素是 char[10],长度应该在 0-10之间,超过会报错 //  char b[][10] = {//      "Hello",//      "abcdefghijklmnopq"//  };    return 0;}

3. main参数

  • int main(int argc, char const *argv[])
  • argv[0] 是命令本身
    • 当使用 Unix的符号链接时,反映符号链接的名字
#include<stdio.h>int main(int argc, char const *argv[]){    int i;    for(i = 0; i < argc; i++){        printf("%d::%s\n", argv[i]);    }    return 0;}

这里写图片描述

0 0
原创粉丝点击