一、关于strcat、strlen和*的作用
/先看一个作业/
/****************************
* 文件名:[作业]
* 作者:〈漆黑〉
* 描述:〈1、提示用户输入名字并执行以下操作
a、打印名字、包括双引号。
b、在宽度为20的字段右端打印名字,包括双引号
c、在比姓名宽度宽3的字段中打印名字。〉
* 创建时间:2019.4.19
****************************/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char name[10]; //存储名
char surname[5];//存储姓
printf("请输入您的名:");
scanf("%s",&name);
printf("请输入您的姓:");
scanf("%s",&surname);
strcat(name,surname); //把姓添加到名后面
printf("打印名和姓:\"%s\"\n",name);
printf("在宽度为20的字段右端打印:\"%20s\"\n",name);
printf("在宽度为20的字段左端打印:\"%-20s\"\n",name); //负号表示在左端
printf("在比姓名宽度宽3的字段中打印:\"%*s\"\n",strlen(name) + 3,name); //*代表字符宽度,strlen()测量宽度
return 0;
}
1.strcat(a,b) 好像无法用于a,b为指针,用数组比较方便。
2.strlen(a) 可以用来测量数组内字符的长度(不测量空的部分),或指针指向的字符串的长度,或直接赋值的字符串,比sizeof好用一些。
3.%20s :代表20字节宽度的右边。
4.%-20s :代表20字节宽度的左边。
5.* :代表字符长度。