您的位置:首页 > 其它

3.1 字符串操作

2017-02-15 09:57 120 查看

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;
}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: