C语言 函数问题

C语言 码拜 8年前 (2016-05-12) 1012次浏览
#include <string.h>
void squeeze(char s1[], char s2[4])
{
int i,j;
for (i=0;i<=3;i++)
{
for (j=0; (s2[j])!=”\0″;j++)
{
if (s2[j]!=s1[i])
;
else
s1[i]=”\0″;
}
}
}
程序如上,是C程序设计语言中2-4习题(把s1字符串全部与s2字符匹配的删除掉)string的库是计划把第一个for语句中间的i<=3换成strle(s2[]) 可是一换就出错 ,错误原因error C2059: syntax error : “}”,求高手帮看下   习题答案给的是从s1的第一个字符与s2进行匹配  本人这样设计可行吗?
解决方案

10

strlen(s2)
删除字符 不能直接将其置为0, 原因是字符串遇 0 结束, 所以应该是把后续的字符串往前移动

60

strle(s2[]) –>strlen(s2)
行不行,本人试下就知道了。
单步调试和设断点调试(VS IDE中编译连接通过以后,按F10或F11键单步执行,按Shift+F11退出当前函数;在某行按F9设断点后按F5执行停在该断点处。)是程序员必须掌握的技能之一。

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明C语言 函数问题
喜欢 (0)
[1034331897@qq.com]
分享 (0)