#include <stdio.h>
#include <string.h>
#define MAXLINE 1000
int getline(char *line, int max);
/* find: print lines that match pattern from 1st arg */
main(int argc, char *argv[])
{
char line[MAXLINE];
long lineno = 0;
int c, except = 0, number = 0, found = 0;
while (--argc > 0 && (*++argv)[0] == ‘-‘)
while (c = *++argv[0])
switch (c) {
case ‘x‘:
except = 1;
break;
case ‘n‘:
number = 1;
break;
default:
printf("find: illegal option %c\n", c);
argc = 0;
found = -1;
break;
}
if (argc != 1)
printf("Usage: find -x -n pattern\n");
else
while (getline(line, MAXLINE) > 0) {
lineno++;
if ((strstr(line, *argv) != NULL) != except) {
if (number)
printf("%ld:", lineno);
printf("%s", line);
found++;
}
}
return found;
}
经典指针表达式程序 -- 简版find指令实现
时间: 2025-01-02 14:50:49
经典指针表达式程序 -- 简版find指令实现的相关文章
【Python之旅】第五篇(四):基于Python Sockct多线程的简版SSH程序
还是继续延续篇五中前三节的例子,通过对代码的修修补补,把它改成一个可以在连接后就能在Client端执行Server端命令的程序,所以就有点类似于SSH连接程序了. 至于还是用前面的例子来改嘛,是因为上课也一直这么干,而且老师也讲得非常不错,自己吸收后也作为一个学习的记录吧,因为确实是非常不错的! 之所以能对前面的例子如这样的修改,应当有这样的思想:前面的例子中,Server端能够返回Client端输入的字符串,那么如果Client端输入的是Linux的shell命令,Server端是否可以执行这
100个经典C语言程序(益智类)
100个经典C语言程序(益智类) [1.绘制余弦曲线] 在屏幕上用"*"显示0~360度的余弦函数cos(x)曲线 [问题分析与算法设计] 利用cos(x)的左右对称性,将屏幕的行方向定义为x,列方向定义为y,则0~180度的图形与180~360度的图形是左右对称的,若定义图形的总宽度为62列,计算出x行0~180度时y点的坐标m,那么在同一行与之对称的180~360度的y点的坐标就 应为62-m.程序中利用反余弦函数acos计算坐标(x,y)的对应关系. #include<st
【Scala编程】格式化算术表达式程序
格式化算术表达式程序 为了练习模式匹配的使用,该博文介绍编写格式化算术表达式的程序,最终的呈现结果如下面这个二维布局的数学表达式所示,这里除法运算被垂直打印出来: 1 - * (x + 1) 2 ----------- x 1.5 - + --- 2 x 为了实现这个程序,我们需要做一下工作: 1. 编写一个二维布局库来创建和渲染二维布局元素.这里主要应用Scala面向对象编程的一些方法,通过组合与继承来构建简单部件,进而实现库的设计. 2. 编写一个表达式的格式化类,利用二维布局库来渲染二维字
安全技能树简版(转)
Expand - Collapse 安全技能树简版 说明 V1 By @余弦 201706 联系我:[email protected] 更新动态关注微信公众号:懒人在思考 工欲善其事必先利其器 世界之大总有一款利器适合你 https://github.com/Hack-with-Github/Awesome-Hacking 这份技能树最适合走向安全工程化之路的人 高效习惯 正则表达式 调试工具 Kodos RegexBuddy https://regexper.com/ 正则表达式30分钟入门
经典排序算法(Java版)
经典排序算法(Java版) 转载 1.冒泡排序 Bubble Sort最简单的排序方法是冒泡排序方法.这种方法的基本思想是,将待排序的元素看作是竖着排列的“气泡”,较小的元素比较轻,从而要往上浮.在冒泡排序算法中我们要对这个“气泡”序列处理若干遍.所谓一遍处理,就是自底向上检查一遍这个序列,并时刻注意两个相邻的元素的顺序是否正确.如果发现两个相邻元素的顺序不对,即“轻”的元素在下面,就交换它们的位置.显然,处理一遍之后,“最轻”的元素就浮到了最高位置:处理二遍之后,“次轻”的元素就浮到了次高位
200行代码实现简版react&#128293;
200行代码实现简版react?? 现在(2018年)react在前端开发领域已经越来越??了,我自己也经常在项目中使用react,但是却总是好奇react的底层实现原理,多次尝试阅读react源代码都无法读下去,确实太难了.前不久在网上看到几篇介绍如何自己动手实现react的文章,这里基于这些资料,并加入一些自己的想法,从0开始仅用200行代码实现一个简版react,相信看完后大家都会对react的内部实现原理有更多了解.但是在动手之前我们需要先掌握几个react相关的重要概念,比如组件(类)
微信公众号和小程序打通版商城解决方案
微信公众号和小程序打通版商城解决方案 一键安装小程序公众号商城,零基础开发CRMEB微信公众号小程序主要是以用户管理为中心,加电商系统,利用微信和小程序的优势,拼团.砍价.秒杀.积分.优惠券等吸引粉丝-转化粉丝-粘住粉丝-分析粉丝-维护粉丝-再次利用粉丝吸引粉丝形成闭环滚雪球模式 源码下载地址::http://github.crmeb.net/u/crmeb基于thinkphp5框架开发的一套用户管理+电商系统,主要是基于微信公众号和微信小程序的一套电商系统,后台采用form-builder组件
【铜】第131篇 融合一对一canvas视频录制到备份上(二)简版做成及追加图片过程周四
关键词:一对一canvas视频录制, 简版做成,追加图片过程 一.一对一视频录制 1.1 往备份上布录制-----------------bug处理 现在不知道,网页录制都依赖哪些文件,现在需要一个一个的去除.现在去除差不多了,如下: 经过整理发现,仅仅需要两个文件,就能实现录制.如下: 简版访问地址如下: http://localhost:9001/record-canvas-drawings.html#no-back-button 二.追加图片过程 2.1 学生端追加拍照 <li><
C 指针&&表达式&&常量
一.指针 在计算机语言中,由于通过地址能找到所需的变量,可以说地址指向该变量单元,因此把地址形象的称为'指针',意思是能通过它来找到以它为地址的内存单元. 1.1.指针&&变量 指针变量与普通变量一样,使用之前不仅要定义说明而且必须要赋具体的值,未经赋值的指针变量不能使用:可以对指针变量初始化为NULL,但是不能对值为NULL的指针变量解引用. 如下定义一个指针变量p指向a,这样就可以通过p访问a并对a进行操作. int a=0; int *p=NULL; p=&a; *p=10;