|
|
发表于 2023-12-14 20:36:50
|
显示全部楼层
在你的代码中,主要问题是 `s = a;` 这行代码。这行代码试图将指针 `a` 赋值给指针 `s`,但是你并没有为指针 `a` 分配内存空间,所以会导致程序异常退出。
另外,我注意到你使用了一个不推荐的头文件 `#include`,应该改为 `#include <stdio.h>`。
以下是修正后的代码:
- #include <stdio.h>
- void name(int n, char *a) {
- scanf("%s", a);
- printf("\n%s", a);
- printf("\n");
- }
- int main() {
- char a[100]; // 为指针 a 分配内存空间
- char* s;
- s = a;
- int n = 0, m = 3;
- for (n = 0; n < m; n++) {
- name(n, s);
- }
- return 0;
- }
复制代码
现在,这个程序将能够循环执行 `name` 函数,并且在输入字符串后打印出来,直到 `n` 达到 `m` 的值。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|