c语言-指针&&字符串&&函数
/*这个程序哪里有问题吗?我得不出运行结果*/#include<stdio.h>
void delnum(char * s){
int i,j;
for(i=0,j=0;s!='\0';i++){
if(s<'0'||s>'9'){//这里还能输出s
s=s; //我调试的时候大概是在这里出现的问题
j++;
}
}
s='\0';
}
void main()
{
char * str="I am a 556student.";
delnum(str);
printf("%s",str);
} 本帖最后由 xieglt 于 2020-11-7 20:22 编辑
#include<stdio.h>
void delnum(char * s){
int i,j;
for(i=0,j=0;s!='\0';i++){
if(s<'0'||s>'9'){//这里还能输出s
s=s; //我调试的时候大概是在这里出现的问题
j++;
}
}
s='\0';
}
/*
char* str="I am a 556student."; 这样定义的字符串是个常量,不能被修改的,修改会导致非法内存访问错误
改成这样定义就可以了.
charstr[]="I am a 556student.";
*/
void main()
{
charstr[]="I am a 556student.";
delnum(str);
printf("%s",str);
}
xieglt 发表于 2020-11-7 20:20
好的,非常感谢你 本帖最后由 乐瑜 于 2020-11-7 21:23 编辑
0⃣ xieglt 发表于 2020-11-7 20:20
我还想要请问一下,这个str改成数组,那调用函数那里也需要把指针改成数组吗?如果想用指针完成这个功能,怎么改比较合适呢? 乐瑜 发表于 2020-11-7 21:22
我还想要请问一下,这个str改成数组,那调用函数那里也需要把指针改成数组吗?如果想用指针完成这个功能 ...
不需要改 xieglt 发表于 2020-11-7 21:44
不需要改
ok
页:
[1]