C语言随记(一)
来源:互联网 发布:mysql 连续签到天数 编辑:程序博客网 时间:2024/05/01 05:30
这个笔记是平时在学习,开发的时候遇到的一些被遗忘的点做补充。
一:
printf("%*.*...",...);
这里我遗忘是因为以前遇到过这个:scanf("%*...",...);
这里的两个是不一样的,第一个里面的”*“是要通过后面的一个整形参数填充的,所以输出样式大概就是: printf("%3.3...",...);
这个样子的,后面的那个*号代表跳过的意思,就比如scanf("%*s",...);
此时输入的字符串实际上是会被跳过的,所以对应后面的char *里面是没有被填充的,这里还有一个小应用scanf("%s%*c",...);
这里后面实际上只需要跟一个字符串缓冲区就好了(上面那个也一样可以这么做)这个就可以直接解决回车遗留在缓冲区的问题(”%s”遇到制表符(tab,空格,回车)的时候就会停止输入,此时停止的那个符号及后面的东西都会被遗留在缓冲区带下一个i函数读取,这里的%*c实际上就是等效于加了一个getchar()在后面)
二:
一个伪字符串格式输出的方法:
嗯灰常有趣的一个东西:
#include<stdio.h>int main(){ printf("%.*s",5, &"Hello World"[6];//printf("%.*s",5, &6["Hello World"]); return 0;}
其实有一点点基础的都可以很轻松的分析出来,先解引用然后再取址给%s输出,说白了就是*(POINT + int)一个模式的,哈哈
后面的注释是另一种表达方法,原理就是上面的那一个(出自《C专家编程》,好久没看了,是时候回去好好重新品品了,是本好书,假期会补上他的笔记的!)
阅读全文
0 0
- C语言随记(一)
- C语言随记(一)—函数
- C语言函数随记:fflush()函数
- C语言问题随记
- C语言学习随记
- C语言随记(二)—结构化程序设计
- 随记(一)
- 孕妇随记(一)
- 学习随记(一)
- 工作随记(一)
- 随记(一)
- C语言字符与字符串随记
- c语言笔试坑题随记
- C语言函数随记:atoi()函数
- ocp学习随记(一)
- 移动产品设计随记(一)
- Android学习随记(一)
- threejs学习随记(一)
- 中断响应,重入锁
- <NOIP> 27 . P1618 三连击(升级版)
- self.delegate = self?
- 关于centos7安装mysql5.7过程与修改初始密码
- JavaSwing_2.6: JTextField(文本框)
- C语言随记(一)
- leetcode#66. Plus One
- JavaSwing_2.7: JPasswordField(密码框)
- Oracle 表操作
- LeetCode 11:Container With Most Water
- JavaSwing_2.8: JTextArea(文本区域)
- C语言中如何使用通用双向链表
- 装备掉落策略
- <NOIP> 28 . P1579 哥德巴赫猜想(升级版)