函数似乎不起作用,函数中print variable(string)
时的正确形式是什么?
void f1(char ara, char arb)
{
printf("Acronym found:\n %s - %s\n", ara, arb);
}
int main(void)
{
char arc[20],ar1[] = "AFAIK",ard1[] = "as far as I know";
printf("Welcome to the internet help system\nEnter \"quit\" to exit the program\n");
do
{
printf("Enter a string: ");
scanf("%s", &arc);
if (strcmp(arc, ar1) == 0)
f1(ar1, ard1);
.......
答案 0 :(得分:1)
只需将f1中的参数类型更改为指针变量。
void f1(char * ara,char * arb)
因为在给char时它只需要一个字符,因为它只有一个字节来存储字符。
当你将它转换为字符指针时,它将有4个字节来存储字符串。
答案 1 :(得分:1)
void f1(char *ara, char *arb)
{
printf("Acronym found:\n %s - %s\n", ara, arb);
}
(or)
void f1(char ara[], char arb[])
{
printf("Acronym found:\n %s - %s\n", ara, arb);
}
从另一个函数获取字符串时使用此类型的参数。