【发布时间】:2022-01-04 01:15:35
【问题描述】:
任务是创建一个替换 strlen 的函数,但按照我将介绍的顺序,您必须填补空白。我尝试了一些东西,但在需要计算尺寸并将其退回的地方卡住了。
#include <stdio.h>
#define MAXLENGTH 80
int my_strlen(char* s)
{
char *p = (1);
while (2)
(3);
return (4);
}
int main()
{
char str[MAXLENGTH];
int len;
printf("Enter a string:");
gets(str);
len = my_strlen(str);
printf("The length of the string %s is %d\n", str, len);
}
我试过这个但是卡在3,如何计算大小
#include <stdio.h>
#define MAXLENGTH 80
int my_strlen(char* s)
{
char *p = s;
while (*p++ != '\0')
(3);
return (4);
}
int main()
{
char str[MAXLENGTH];
int len;
printf("Enter a string:");
gets(str);
len = my_strlen(str);
printf("The length of the string %s is %d\n", str, len);
}
【问题讨论】:
-
您遇到了什么问题?到目前为止,您尝试过什么?
-
那么您的实际问题是什么?是什么特别阻碍了您完成甚至开始任务?
-
要回答你的问题,
char *p = s; while (*p != '\0') p++; return p - s;。 -
如果它应该替换
strlen,它应该返回size_t。
标签: c string pointers char strlen