189 8069 5689

c语言如何使一个函数去掉 c语言删除函数怎么写

C语言如何退出函数

方法一:

创新互联-云计算及IDC服务提供商,涵盖公有云、IDC机房租用、西部信息中心、等保安全、私有云建设等企业级互联网基础服务,服务热线:18982081108

main()函数写成int型的,即int main()

然后结束的时候

只需return 0;

代表程序正常结束

方法二:

利用

if(条件)

exit();

if语句条件满足时退出程序。

C语言的删除函数

楼主的意思是在str1中删除str2中出现的字符?那么改成:

#includestdio.h

void main ()

{

char str1[9]={'t','i','n','m','f','g','y','f','s'};

char str2[3]={'A','s','g'};

int i,k,l;

for(i=0;i9;i++)

{

l=0;

for(k=0;k3;k++)

{

if (str1[i]=str2[k])

{l=1;break;}

}

if l!=1

printf("%c",str1[i]);

}

}

C语言中设计一个函数,可以删除一个字符串中所有指定字符

下面函数在p1中删除p2中出现的任何字符。

void delall(char *p1, char *p2)

{

char *pNext, *p;

// NULL string is ignored.

if(NULL == p1 || NULL == p2)

return;

for(pNext=p1; *pNext; pNext++){

// Find current char in p2.

for(p=p2; *p; p++){

if(*pNext == *p){ // Skip char found in p2.

break;

}

}

// Append next char to result.

*p1 = *pNext;

// Increase result point when this char not found int p2.

if(!*p)

*p1 ++;

}

*p1 = 0;

}

删除串比较麻烦,删除一个子串后可能会在原字符串中构造出一个新的子串,所以处理起来不是太简单,比如输入字符串:abcdeddefeffghijklmn,从中删除def

如果不计较效率的话重新扫描那部分回退到p1开始就行了,更清晰点。

下面函数在p1中删除p2字符串。

void del(char *p1, char *p2)

{

char *p;

int len1, len2;

// NULL string is ignored.

if(NULL == p1 || NULL == p2)

return;

len1 = strlen(p1);

len2 = strlen(p2);

// p2 is not a substring of p1.

if(len2 len1)

return;

// Find p2 in p1.

for(p=p1; len1 = len2; p++, len1--){

if(strncmp(p, p2, len2) == 0){

memmove(p, (p+len2), (len1-len2));

*(p+(len1-len2)) = 0; // End of string.

// Rewind pointer to string start

// (memmove may construct a new string p2 in p1).

if((p - p1) len2){

p -= len2;

len1 += len2;

}else{

p = p1;

len1 = strlen(p1);

}

continue;

}

}

}


分享文章:c语言如何使一个函数去掉 c语言删除函数怎么写
转载注明:http://jkwzsj.com/article/hjjidg.html

其他资讯