C 如何在不使用<;的情况下实现功能;string.h>;?
我有一段代码正在文件模式中搜索,然后写这行代码。如果不使用库#include,如何重写此代码?谢谢你的评论C 如何在不使用<;的情况下实现功能;string.h>;?,c,C,我有一段代码正在文件模式中搜索,然后写这行代码。如果不使用库#include,如何重写此代码?谢谢你的评论 #include <stdio.h> #include <string.h> int get_line(char *line, int max); int main(int argc, char *argv[]) { char line[10000]; int found = 0; while (get_line(line,
#include <stdio.h>
#include <string.h>
int get_line(char *line, int max);
int main(int argc, char *argv[])
{
char line[10000];
int found = 0;
while (get_line(line, 10000) > 0)
if (strstr(line, argv[1]) != NULL)
{
printf("%s", line);
found++;
}
else
{
return 1;
}
return found;
}
int get_line(char s[], int lim)
{
int i;
int c;
for (i = 0; i < lim - 1 && (c = getchar()) != EOF && c != '\n'; ++i)
{
s[i] = c;
}
if (c == '\n')
{
s[i] = c;
++i;
}
s[i] = '\0';
return i;
}
#包括
#包括
int get_行(字符*行,int max);
int main(int argc,char*argv[])
{
字符行[10000];
int=0;
while(get_line(line,10000)>0)
if(strstr(行,argv[1])!=NULL)
{
printf(“%s”,第行);
发现++;
}
其他的
{
返回1;
}
发现退货;
}
int get_行(字符s[],int lim)
{
int i;
INTC;
对于(i=0;i
那么你是在问如何编写自己版本的?如果你不想使用#include's,还必须编写自己的getchar()
和printf()
。与编写任何其他代码一样。首先计算出算法,然后将其转化为代码。那么,你到底被卡在了哪一部分?你算出算法了吗?如果你对自己不了解的内容更加具体,你会得到更好的帮助。请注意边缘情况——当你在第一个getchar上得到EOF时,“c”会发生什么?(它将保持未初始化状态)。