《c程序设计语言》读书笔记-5.6-指针重写getline等函数
来源:互联网 发布:c语言编写一个计算器 编辑:程序博客网 时间:2024/06/05 11:12
#include <stdio.h>#include <math.h>#include <stdlib.h>#include <string.h>#include <ctype.h>#include <curses.h>int getline_(char *s,int n){ char c; char *sta = s; while(--n > 0 && (c = getchar()) != EOF && c != '\n') { *s++ = c; } if(c == '\n') *s++ = c; *s = '\0'; return s - sta;}int atoi_(char *s){ int n,sign; for(;isspace(*s);s++) ; sign = (*s == '-') ? -1 : 1; if(*s == '+' || *s == '-') s++; for(n = 0;isdigit(*s);s++) n = 10 * n + *s - '0'; return sign * n;}void reverse_(char *s){ int temp; char *t; for(t = s + strlen(s) - 1;s < t;s++,t--) { temp = *s; *s = *t; *t = temp; }}void itoa_(int n,char *s){ int sign; char *t = s; if((sign = n) < 0) n = -n; do { *s++ = n % 10 + '0'; }while((n /= 10) != 0); if(sign < 0) *s++ ='-'; *s = '\0'; reverse_(t);}int strindex_(char *s,char *t) //返回最右边出现的位置{ char *sta = s; char *p,*r; int n = -2; for(;*s != '\0';s++) { for(p = s,r = t;*r != '\0' && *p == *r;p++,r++) ; if(r > t && *r == '\0') n = s - sta; } if(n != -2) return n; else return -1;}int main(){ char p[] = "abcdefgab",q[] = "uh"; int n; n = strindex_(p,q); printf("%d",n); return 0;}
0 0
- 《c程序设计语言》读书笔记-5.6-指针重写getline等函数
- 《c程序设计语言》读书笔记-5.3-指针实现strcat
- 《c程序设计语言》读书笔记-5.4-指针实现strend
- 《c程序设计语言》读书笔记-4.2-扩充atof函数
- 《C程序设计语言》——函数指针
- 11.17C程序设计语言---字符指针与函数
- 《c程序设计语言》读书笔记-5.5-指针实现strncpy,strncat,strncmp
- 《c程序设计语言》读书笔记-5.9-指针转换天数和日期
- 《c程序设计语言》读书笔记(五)——指针与数组
- 《C程序设计语言》读书笔记20091106
- 《C程序设计语言》读书笔记
- c程序设计语言读书笔记(1)
- C程序设计语言读书笔记(2)
- C程序设计语言读书笔记(3)
- C程序设计语言读书笔记(4)
- C程序设计语言读书笔记(5)
- C程序设计语言读书笔记(6)
- C程序设计语言读书笔记(7)
- 好事客导航_新一代安全、实用、便捷的网址导航
- java反射
- 深入理解HTTP Session
- IP查询接口
- C++ class Date
- 《c程序设计语言》读书笔记-5.6-指针重写getline等函数
- [UI]Android启动引导界面ViewPager
- apache jmeter压力测试初体会-Mongodb Elasticsearch Test
- iphone系统架构以及各层提供的主要服务
- Ueditor
- 策略模式和简单工厂
- <<深入理解计算机系统>>之构建tinyweb源码
- 解决listview与SwipeRefreshLayout滑动冲突问题
- 解决Ice 对象大数据量传输Bug