一个非常简单的小程序,但是有个关于字符串的问题!!大家帮我!!
#include <stdio.h>#include <string.h>
void make_unknown(char *s) {
int i;
for (i = 0; i <= strlen(s); i++) {
*(s + i) = *(s + i) + 3;
}
}
void make_known(char *s) {
int i;
for (i = 0; i <= strlen(s); i++) {
*(s + i) = *(s + i) - 3;
}
}
int main(void) {
char s[] = "I love Saber!"; //这里,写成 char *s = "I love Saber!"系统会自动退出,为什么???这两种写法有什么区别么??
make_unknown(s);
printf("%s\n", s);
make_known(s);
printf("%s\n", s);
return 0;
}
我用的是GCC,但是用LCC编译是可以的!!!
[[it] 本帖最后由 mqh21364 于 2008-3-12 17:05 编辑 [/it]]