C语言讲义——字符串

字符数组

C语言字符串就是字符数组。

  • 单写字符,用单引号。如:’A’。
  • 字符串用双引号。如:”A”、”ABC”。
#include <stdio.h>
main() {
	char c1 = 'a';
	printf("%c\n", c1-1);
	printf("%c\n", c1);
	printf("%c\n", c1+1);

	// 可直接转int输出
	printf("%d %c\n", c1,c1);
}

ASCII码:

字符 十进制数
‘0’ 48
‘A’ 65
‘a’ 97
#include <stdio.h>
#define LEN 10 
int main(int argc, char *argv[]) {
	printf("**不定义数组长度*******************************\n");
	char str1[]="Andy";
	printf("数组长度:%d\n", sizeof(str1));
	printf("字符串内容:%s\n", str1);

	printf("**定义数组长度*******************************\n");
	char str2[LEN]="Andy";
	printf("数组长度:%d\n", sizeof(str2));
	printf("字符串内容:%s\n", str2);
	for(int i =0; i<LEN; i++) {
		printf("index:%d  char:%c  int:%d \n",i, str2[i], str2[i]);
	}
	printf("\n");
	printf("**查看字符\\0*******************************\n");
	// Dev C++编译器把\0转成a输出
	char a='\0';
	printf("数字:%d 显示为字符:%c\n", a, a);

	return 0;
}

字符串字面量(string literal)

一对双引号括起来的字符序列
比如:“Hello World”

结束符

C语言字符串需要在数组最后加一个结束字符:’\0’(ASCII码为0)

  • char str2[5]=“abcd”;// 四个字符,至少5个空间

全角半角

全角指一个字符占用两个标准字符位置。
C语言中,一个中文字符占2个字符的位置。

C语言中:
存放”ABC”至少需要4个字符(char str[4]即【A】【B】【C】【\0】);
存放”西游记”至少需要7个字符(char str[7])

换行(回车换行)

输出内容的换行:\n	(这是一个字符’\n’)
打码编写时换行(显示结果不换行):\
#include <stdio.h>
int main() {
	printf("C程序设计\n清华大学出版社");
	printf("\n---------分割线--------\n");
	printf("C程序设计\
清华大学出版社");
	return 0;
}

运行结果:

C程序设计
清华大学出版社
---------分割线--------
C程序设计清华大学出版社

回车换行:
\n是换行,英文是New Line/Line Feed,表示使光标到行首
\r是回车,英文是Carriage Return,表示使光标下移一格

输入输出

字符串和字符的输出占位符:%c、%s

printf("**字符串******************************************************\n");
printf("字符c %c\n", 'a');
printf("字符串s %s\n", "abc");

(1)scanf和printf

	char str[100];
	scanf("%s", str); // 输入
	printf("%s",str); // 输出

(2)get和puts

	char str[100];
	gets(str); // 输入
	puts(str); // 输出
posted @ 2019-07-15 21:27  虎老狮  阅读(380)  评论(0编辑  收藏  举报