c - 将字符串数组传递给函数 C

标签 c arrays string function

我目前对如何将字符串数组传递给函数感到困惑。我创建了一个一维数组。我已经完成的方法有效,但它似乎是多余的,我认为有更好的方法可以做到这一点,但我不确定如何做。我正在尝试找到一种方法,可以将所有 4 个元素一次传递给该函数。

这是我的代码示例。

#include <stdio.h>
#include <string.h>
#include <ctype.h>

void sort(char *,char *,char *, char *);//Function prototype
int main()
{
    char *string_database[4]={'\0'};
    string_database[0]="Florida";
    string_database[1]="Oregon";
    string_database[2]="California";
    string_database[3]="Georgia";
    sort(string_database[0],string_database[1],string_database[2],string_database[3]);
    return 0;
}

void sort(char *string1, char *string2, char *string3, char *string4)
{

    printf("The string is= %s\n",string1);
    printf("The string is= %s\n",string2);
    printf("The string is= %s\n",string3);
    printf("The string is= %s\n\n\n",string4);

}

预先感谢您,感谢您对我的问题的任何答复。

最佳答案

你可以这样做:

void sort(char **, int);
int main()
{
    char *string_database[5]={'\0'};
    string_database[0]="Florida";
    string_database[1]="Oregon";
    string_database[2]="California";
    string_database[3]="Georgia";

    sort(string_database, 4);
    return 0;
}

void sort(char **str, int n)
{
    int i = 0;
    for (i = 0; i < n; i++)
      printf("The string is= %s\n",str[i]);

}

关于c - 将字符串数组传递给函数 C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30999951/

相关文章:

c - 从一组表达式中评估以达到最高分数的最佳表达式 - Google Interview

c - 简单的立方和平方和函数不会运行 (C)

c - memcpy 更改数字位置

java - 检查数组中的整数是否在范围内

r - 告诉 R 使用存储在对象中的字符串作为列名

javascript - 如何使用 JavaScript 从字符串中删除字符?

c - 带有内联汇编段错误的程序,除非以函数调用为前缀

c++ - 实现 [B,C]=f(A) 语法(函数 f 作用于具有两个或多个输出数组的数组)

php - 使用一维数组中的数据通过算法创建多维数组

c - 这些功能有什么区别?