C 无法从函数返回多个值

C 无法从函数返回多个值,c,C,我一直在尝试运行以下代码。然而,我得到的唯一输出是进程返回00x0。我似乎不明白代码出了什么问题。我是编程新手。感谢您的帮助。谢谢 代码: 我会设置一个名为toCompare的char[]或类似的名称,您必须以这样的方式命名它,以便将来理解它,并使用strcmp来比较字符串。请在此处阅读有关函数的信息: 'ifcountry==argentina没有做您认为它会做的事情。为什么您在使用调试器遍历代码时没有注意到if语句的意外行为?嘿,使用strcmp比较字符串怎么样?尽量不要玩弄任何C语言书或t

我一直在尝试运行以下代码。然而,我得到的唯一输出是进程返回00x0。我似乎不明白代码出了什么问题。我是编程新手。感谢您的帮助。谢谢

代码:

我会设置一个名为toCompare的char[]或类似的名称,您必须以这样的方式命名它,以便将来理解它,并使用strcmp来比较字符串。请在此处阅读有关函数的信息:


'ifcountry==argentina没有做您认为它会做的事情。为什么您在使用调试器遍历代码时没有注意到if语句的意外行为?嘿,使用strcmp比较字符串怎么样?尽量不要玩弄任何C语言书或toturial中所展示的你试图实现的目标。请仔细阅读!并正确格式化您的代码!如前所述,这里很乱。谢谢!我不知道如何使用strcmp。现在问题解决了!不客气。希望有一天你也能回答别人的问题。编辑-在我的代码片段中遗漏了几个错误。Fixed now.gets不再是C C11中的标准函数。如果您的答案解决了这个问题,也许通过使用fgets并处理它后面的“\n”,会更好。
#include<stdio.h>
#include<stdlib.h>

int argentina(int units,int a_price,int *as);

    int main()
    {
        int units,min_cost;
        int a_price=50;
        int a_stock=100;
        int b_stock=100;
        char country[10];
        printf("Enter the name of the country");
        gets(country);
        printf("Enter the number of units");
        scanf("%d",&units);
        if(country=="argentina")
        {
            min_cost=argentina(units,a_price,&a_stock);
            printf("%d : %d : %d",min_cost,b_stock,a_stock);
        }
        return 0;
    }

    int argentina(int units,int a_price, int *as)
    {
        int cost;
        if(units >0 && units<=100)
        {
            cost=a_price * units;
            *as=*as - units;
            return cost;

        }


    }
char toCompare[15];
char country[15];
int ret;

strcpy(toCompare, "argentina");
gets(country);
ret = strcmp(toCompare, country);

if(ret == 0)
{
    min_cost=argentina(units,a_price,&a_stock);
    printf("%d : %d : %d",min_cost,b_stock,a_stock);
}