c - 使用 C 中的字符串通过引用传递
问题描述
我不是 100% 确定如何使用 C 中的字符串通过引用传递,这是我当前的代码(其余的不是很重要,只是 void 函数和调用给我带来了问题):
#include <stdio.h>
#include <math.h>
#include <string.h>
// global constants
#define MAX 100
#define SIZE 50
void reader(int *count, char *names[SIZE][MAX], char *pax[SIZE][MAX], char *range[SIZE][MAX], char *cost[SIZE][MAX])
{
char line[SIZE];
FILE *filepointer;
filepointer = fopen("planedata.txt", "r");
*count = 0;
while(fgets(line, SIZE, filepointer) != NULL)
{
strcpy(*names[*count], line);
if(fgets(line, SIZE, filepointer) != NULL)
{
strcpy(*pax[*count], line);
}
if(fgets(line, SIZE, filepointer) != NULL)
{
strcpy(*range[*count], line);
}
if(fgets(line, SIZE, filepointer) != NULL)
{
strcpy(*cost[*count], line);
}
*count++;
}
fclose(filepointer);
}
我试过删除星号和其他东西,但它不起作用,我认为这可能与我在声明中使用数组的事实有关,但我不太确定。任何帮助,将不胜感激。如果有帮助,这就是我调用 void 函数的地方:
reader(&count, &names[SIZE][MAX], &pax[SIZE][MAX], &range[SIZE][MAX], &cost[SIZE][MAX]);
解决方案
推荐阅读
- clojure - 是什么导致错误 java.io.FileNotFoundException:在引导时无法在类路径上找到 nrepl/server__init.class 或 nrepl/server.clj?
- identity - 不依赖于 EDID 的唯一显示器 ID
- amazon-web-services - 当我在调用中包含授权标头时,为什么我会收到来自 AWS Lambda/Api 网关的 502:错误网关?
- php - 带有 100kb JSON blob 的非常慢的 apache 请求
- php - 如何修复 WooCommerce 中的 PayPal IPN 验证错误?
- c# - 在 DynamoDB AWS C# .net core 中应用查询
- javascript - 用间隔反应更新状态
- wordpress - Wordpress API - 访问页面字段
- c++ - 自动转换为无效未使用的变量 C++
- android - 将 CSV 文件从 Android 设备传输到 PC