我最近才开始使用 Code Runner,由于某种原因它不会编译我的 C 程序。
错误如下:
Undefined symbols for architecture x86_64:
"_rush", referenced from:
_main in main-f9aa06.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
主程序
#include <stdio.h>
int ft_putchar(char c);
void rush(int x, int y);
int main(void){
int x, y;
scanf("%i", &x);
scanf("%i", &y);
rush(x, y);
return (0);
}
ftputchar.c
#include <unistd.h>
int ft_putchar(char c){
write(1, &c, 1);
return (0);
}
rush.c
int ft_putchar(char c);
void top_bottom(int n){
int i = 0;
ft_putchar('A');
while(i < n - 2){
ft_putchar('B');
i++;
}
ft_putchar('C');
ft_putchar('\n');
}
void rush(int x, int y){
if(x > 1 && y > 1) {
int j, i;
j = 0;
i = 0;
top_bottom(x);
while (i < y - 2) {
ft_putchar('B');
while (j < x - 2){
ft_putchar(' ');
j++;
}
j = 0;
ft_putchar('B');
ft_putchar('\n');
i++;
}
top_bottom(x);
}
if(x < 1 || y < 1){
return ;
}
if(x == 1 && y == 1){
ft_putchar('A');
ft_putchar('\n');
}
if(x > 1 && y == 1){
top_bottom_03(x);
}
if(x == 1 && y > 1){
int i = 0;
ft_putchar('A');
ft_putchar('\n');
while(i < y - 2){
ft_putchar('B');
ft_putchar('\n');
i++;
}
ft_putchar('A');
ft_putchar('\n');
}
}
代码运行器 v2.3
但是,当我使用 XCode 编译和运行代码时,它工作得非常好。
此外,如果我将所有内容都放入main.c文件,则代码将完美运行并编译。