C语言----格式化描述字符串中 * 在scanf 和 printf 中的作用

用了2年时间c语言,结果还不会这个,眼界属实有点窄了。。。。。

/*
学习:https://www.zhihu.com/question/301146334
格式化描述字符串中 *  在scanf 和 printf 中的作用
*/
#include<stdio.h>
int main()
{
    
    
	int a;
	scanf("%*d%d",&a);// 在scanf 中的含义是 忽略掉这个匹配的输入 
	printf("a=%d\n",a); 

	printf("%*s\n",5,"!");
	/* 在printf 中一个 %*s 和两个参数对应,(n,m),
	对于m的位数若是不足n位就会用空格补齐 ,若是足够则不做处理 */ 
	printf("%*s\n",5,"1234567"); 
	printf("%.*s", 5,"1234567");/* 用%.*s  (n,m) 若m位数超过n,则截取前n位输出 */
	return 0;
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/DREAM_yao/article/details/109021234