c - 从括号中读取并将其转换为数组

标签 c arrays

首先,我必须说,我对 C 语言编程还很陌生,但我无法克服我的一个问题:

#include <stdio.h>
void main(){
    struct huh{
        char cos[];
    };
    huh(abbcabd);
    printf("%c",cos[3]);
}

在本例中我希望输出为“b”,但我不需要评论该代码根本不起作用。

我想在 huh() 括号中输入一些文本,这样它就会被转换为数组或类似的东西,这样我就可以稍后使用输入字母的顺序。

对我来说重要的是,它的使用看起来就像现在的样子 - 只需在括号中输入任何内容即可。

那么它应该是什么样子?

最佳答案

#include <stdio.h>

#define huh(x) cos = #x

char *cos;

int main(){
    struct huh{//unuse type
        char dummy;
        char cos[];
    };

    huh(abbcabd);

    printf("%c",cos[3]);//print c, array origin 0 in C
    return 0;
}

关于c - 从括号中读取并将其转换为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20455984/

相关文章:

编译时常量和形式参数

c - 如何从选定的 gtk_combo_box 项目中获取字符串?

arrays - 从可观察数组中获取第 n 个项目

JavaScript For 循环仅针对迭代器的最后一个值执行

C++ 错误 : array initializer must be an initializer list

arrays - 调用/创建数组时从 csv 指定源行

c++ - dll中的xmlrpc服务器,向自己发送信号?

c - 在 elf-gcc 中,exp() 只在第一次调用时正常工作,之后就不行了

使用前的 C 声明

php - (PHP) 解析命令