#include <stdio.h>
#include <stdlib.h>
#include <string.h>
/*
单个字符
1 char a = ‘a’;
scanf("%c", &a);
printf("%c", a);
- a = getchar 读入一个字符
putchar(a);
*/
/*
字符串
for (int i = 1; i < 10; i++)
scanf("%c", &s[i]);
s[i] = getchar();
scanf("%s", s); //没有 &
printf("%s\n", s);
printf("%c", (*s)); s指向的内容, 字符串的第一个字符
scanf("%s", s); // 遇到 1 ‘ ’; 2 ‘\n’ 3 ‘\t’ 停止读入
一行的读入
int idx = 0;
while (s[idx] = getchar()) {
if (s[idx] == '\n') { //回车
break;
}
idx++;
}
gets(s); //一次读入一行
puts(s); //输出一个字符串, 回车,换行
char s[100]; //100 字符数组 = {’\0’, ‘\0’, …}
读入
char str[6] = {‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘\0’};
*/
/*
函数
strlen()
找到第一个位置为 ‘\0’
int i;
for (i = 0; ; i++) {
if (s1[i] == ‘\0’) break;
}
printf("%d\n", i);
怎样运行的
int len = strlen(s); //返回字符串的长度
int x = strcmp(s1, s2);
1: 0, 两个字符串相等
2: >0, s1 > s2
3:<0, s1 < s2
char s1[10] = {‘a’, ‘1’, ‘x’, ‘A’, ‘2’};
char s2[10] = {‘a’, ‘1’, ‘x’, ‘A’, ‘2’};
int x = strcmp(s1, s2);
printf("%d\n", x);
ascii 码
int x = strcmp(s1, s2); //a 和 1 比较
整形输出
‘0’ : 48
‘A’ : 65 ‘Z’ : 90
‘a’ : 97 ‘z’ : 122
不知道ascii码
char c = 100;
printf("%c", c);
strcpy()
int i;
for (i = 0; i < strlen(s2); i++) {
s1[i] = s2[i];
}
s1定义的长度要大于等于s2的长度
scanf("%s", s2);
strcpy(s1, s2);
printf("%s", s1);
*/
char s1[100], s2[100];
int main()
{
return 0;
}