细小语法(我容易忘记的)
来源:互联网 发布:网络歌手坏丫头 编辑:程序博客网 时间:2024/04/30 04:29
Memset函数用法(C语言) 原型是extern void *memset(void *buffer, int c, int count) ungetc是将读出的数据再次放回到缓冲区去,下一次读数据时,会再次读出来的。 不过如果把读出的数据放回到缓冲区去后,没有将缓冲区的数据读出来 就再次试图把读出的数据放回到缓冲区去---数据是放不进去的 (可以把缓冲区看做一个可变化的容器,当你把试图用ungetc()函数把读出的数据放回到缓冲区,缓冲区这个容器就为这些数据分配相应的大小空间,之后这个空间是不变的,直到你把缓冲区的数据读出去,所以你在没有释放缓冲区时,再次想往缓冲区装数据是装不进去的) 你可以比较程序一与程序二运行的结果证明上面的结论 程序一: #include <stdio.h> int main (int argc, char **argv) { ungetc ('/n', stdin); printf ("%c", getc(stdin)); ungetc ('a', stdin); printf ("%c", getc(stdin)); ungetc ('b', stdin); printf ("%c", getc(stdin)); ungetc ('c', stdin); printf ("%c", getc(stdin)); return 0; } 程序二: #include <stdio.h>; int main (int argc, char **argv) { ungetc ('c', stdin); ungetc ('b', stdin); ungetc ('a', stdin); ungetc ('/n', stdin); printf ("%c", getc(stdin)); printf ("%c", getc(stdin)); printf ("%c", getc(stdin)); printf ("%c", getc(stdin)); return 0; } 如果去掉rewind(p)这句可以输出一个字符 ,是的,输出时优先考虑缓冲区的数据的输出。 rewind(p)定位到文件的开始,当然只会输出文件里面的内容。 至于你要用上面的代码实现你说的功能 (这是一个返回字符的小程序)可以考虑把while {//code}改成这样 while((ch=fgetc(fp))!=EOF) { ungetc(ch,p); c=getc(p); putc(c,stdout); } 至于ungetc()函数的作用 个人观点:当你从流中读出字符,但却不是你需要的内容时,为了不改流的内容(也许此流另外有用),需要回写进流。写回后再读,仍会读出来
buffer为指针或是数组,c是赋给buffer的值,count是buffer的长度.
这个函数在socket中多用于清空数组.
如:原型是memset(buffer, 0, sizeof(buffer))
isprint
原型: int isprint(char ch);
功能: 判断字符c是否为可打印字符(含空格)
说明: 当c为可打印字符(0x20-0x7e)时,返回非零值,否则返回零
举例:
void print(char c)
{
if (isprint(c)) printf("%c:是可打印字符/n",c);
else printf("%c:不是可打印字符/n",c);
}
void main()
{
SetScreen(0);
print('a');
print(' ');
print(0x7f);
getchar();
}
- 细小语法(我容易忘记的)
- 我容易忘记的命令
- 1、java容易忘记的基础语法知识
- 我的JAVA学习笔记(记下一些容易忘记的知识点)持续更新
- php一些容易让我忘记的用法
- .NET开发中我经常容易忘记的事情
- 容易忘记的常识
- 容易忘记的学习心得
- 容易忘记的css
- 容易忘记的命令
- 容易忘记的标签
- 一些容易忘记的
- 容易忘记的词
- 容易忘记的sql
- 容易忘记的命令
- 记录容易忘记的方法
- 看过的算法容易忘记
- Sql 容易忘记的基础知识
- 开源电子狗项目更新1.1 已实现PS3免引导盘游戏
- android 内核
- 孙鑫MFC笔记教程(4)--MFC消息映射机制的剖析
- Linux find 命令
- 疑
- 细小语法(我容易忘记的)
- 解读离散制造企业ERP选型方略
- “成功”我们要学会微创新!
- php学习中的备忘(二)
- IIS无法正常解析ASP.NET的处理方法
- Android手机横屏竖屏的应用
- Linux平台下的service程序编写指南
- war3第一视角合集
- 常用算法——堆排序