c - 在C中获取char数组中char的索引

标签 c

我遇到了一个错误。 “传递参数 1 'strchr' 从整数生成指针而不进行强制转换”

我该如何解决?

这发生在 const char *ptr = strchr(c, ';');我正在尝试做的只是获取 char 数组中特定 char 的索引。

在我的文件中,例如,我有 100 行,在每一行中,我都有类似 12345;Lucas 的内容,所以我需要将其拆分,数字和字母,我正在尝试搜索“;”并分开。

遵循我的代码

FILE *fp;
char c;
char c2[100];
int i = 0;

fp = fopen("MyFile.csv", "r");

if (!fp) {
    printf("Error!\n");
    exit(0);
}

while((c = getc(fp)) != EOF){
    for (i = 0; i < 1; i++)
{

        const char *ptr = strchr(c, ';');
        if(ptr) {
           int index = ptr - c;
           printf("%d", index);
        }

    }
    printf("%c", c);
}

最佳答案

您的变量 c 是一个单个 字符,而不是一个字符数组。

关于c - 在C中获取char数组中char的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8407481/

相关文章:

c - 我如何知道读取程序集的循环中包含什么

c - 从 OS X 上的 C 中的 dlopen()ed 动态库访问主程序全局变量

c - Linux pthread : What does NP mean in PTHREAD_RWLOCK_PREFER_READER_NP?

c - 为什么 C 中的 freed struct 仍然有数据?

c - 指向数组指针的指针

c - 如何生成三角形的数字模式

objective-c - 如何散列目录的(可能是递归的)内容

c - 嵌套循环错误

c - 源文件找不到头文件

c - 分配数组元素值未按预期工作