一、用指针改写strlen
代码:
#include <stdio.h>
int main(int argc, const char *argv[])
{
int i,len;
len=0;
printf("请输入一个字符串>>>>");
char arr[64];
scanf("%s",arr);
char* parr=arr;
for(i=0;parr[i]!=0;i++)
{
len++;
}
printf("该字符串的长度为%d\n",len);
return 0;
}
运行结果:
二、用指针改写strcpy
代码:
#include <stdio.h>
int main(int argc, const char *argv[])
{
int i;
char arr1[32];
char arr2[64]="";
printf("请输入字符串arr1>>");
scanf("%s",arr1);
char* parr1=arr1;
char* parr2=arr2;
for(i=0;*(parr1+i)!='\0' ;i++)
{
*(parr2+i)=*(parr1+i);
}
parr2[i]='\0';
printf("arr2=%s\n",arr2);
return 0;
}
运行结果:
三、用指针改写strcmp
代码:
#include <stdio.h>
int main(int argc, const char *argv[])
{
int i;
int temp=0;
char arr1[64];
char arr2[64];
printf("请输入两个字符串>>>>");
scanf("%s",arr1);
scanf("%s",arr2);
char* parr1=arr1;
char* parr2=arr2;
for(i=0;*(parr1+i)!='\0';i++)
{
temp=*(parr1+i)-*(parr2+i);
if(temp == 0)
continue;
else
break;
}
printf("%d\n",temp);
return 0;
}
运行结果:
四、用指针改写strcat
代码:
#include <stdio.h>
int main(int argc, const char *argv[])
{
int i,j;
i=j=0;
char arr1[64];
char arr2[64];
printf("请输入两个字符串>>>");
scanf("%s",arr1);
scanf("%s",arr2);
char* parr1=arr1;
char* parr2=arr2;
while(*(parr1+i)!='\0')
{
i++;
}
for(j=0;parr2[j]!='\0';j++)
{
parr1[i+j]=parr2[j];
}
parr1[i+j]='\0';
printf("%s\n",arr1);
return 0;
}
运行结果: