我已經在彙編語言中聲明瞭一個函數tolower,並且從包含標準庫的C代碼調用它。我想知道爲什麼這個工作正常,沒有給出任何錯誤,因爲現在有兩個具有相同名稱的函數。從C調用匯編函數C
我的C代碼:
#include <stdio.h>
#include <string.h>
int main() {
char in0[] = "something";
char in1[] = "SomethinG";
char in2[] = "S0mething";
int i = 0;
while (in0[i]) {
in0[i] = tolower(in0[i]);
in1[i] = tolower(in1[i]);
in2[i] = tolower(in2[i]);
i++;
}
return 0;
}
我不能把我的彙編代碼,因爲它來分配下。我有全球性的tolower功能。
.section .data
.section .text
.globl _start
.globl tolower
.type tolower, @function
tolower:
我已經用gcc cfile.c assfile.s
請添加您的代碼!很可能你現在已經有'_tolower()'和'tolower()'。這當然,如果你記得使彙編函數全球... –
我同意,你可以添加一些代碼,請@kriti Joshi – BMac
我認爲頭文件:ctype.h包含一個宏,而不是一個函數原型爲tolower ()操作。 – user3629249