Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C编程-将数组元素拆分为单独的字符_C_Arrays_Split - Fatal编程技术网

C编程-将数组元素拆分为单独的字符

C编程-将数组元素拆分为单独的字符,c,arrays,split,C,Arrays,Split,假设我有一个数组={2,3,ABCD} 首先,我需要使第三个元素等于一个新数组。我知道char newArr[]=array[2]不起作用,那么我该怎么做呢 第二,我需要一个接一个地打印出newArr的字符。所以我的输出应该是 A. B C D 它们应该彼此分开。我知道如何用java实现这一点,但我不知道C语言的语法是什么。非常感谢您的帮助。类似于: char *array[] = {"2", "3", "ABCD"}; // your existing array. char n

假设我有一个数组={2,3,ABCD}

首先,我需要使第三个元素等于一个新数组。我知道char newArr[]=array[2]不起作用,那么我该怎么做呢

第二,我需要一个接一个地打印出newArr的字符。所以我的输出应该是 A. B C D

它们应该彼此分开。我知道如何用java实现这一点,但我不知道C语言的语法是什么。非常感谢您的帮助。

类似于:

char *array[] = {"2", "3", "ABCD"}; // your existing array.
char n        = strlen(array[2]);   // size of 2nd element.
char *newArr  = malloc(n);          // create new array.
int i;  

// populate the new array.
for(i=0;i<n;i++) {
        newArr[i] = array[2][i];
}       

// print.
for(i=0;i<n;i++) {
        printf("%c\n",newArr[i]);
}       
char*数组[]={“2”、“3”、“ABCD”};//您现有的阵列。
charn=strlen(数组[2]);//第二个元素的大小。
char*newArr=malloc(n);//创建新数组。
int i;
//填充新数组。

对于(i=0;i无需额外的库:

  typedef struct {char x[100];}helper;
  char *a[]={"2","3","ABCD"}, b[100];
  *(helper*)b=*(helper*)a[2];
  puts(b);

你应该在问题开始的时候说明你在问什么。同时,说明你做了什么工作,特别是在哪里遇到了问题。否则,你就是在作弊,在考试或(上帝保佑我们)的时候,这对你毫无帮助你进入了工作队伍。@outis很好,这是一个家庭作业问题的一部分,它是间接问的,在我正在编写的500行程序中没有用。我是一个java程序员,我只是在学习C语法。你不必太粗鲁……即使这不是一个家庭作业问题的全部,也应该注意它是家庭作业。完整的disclo当然,这是避免作弊的必要条件。我永远不会说你应该发布完整的源代码。远远不是这样;应该是完整和简洁的……注意,我第一次评论中的“你”变成了一个半途而废(英语中缺少适当的第三人称动画中性可能是一个相当大的问题);歧义是我的错。当我提到“你进入了工作岗位”,我并没有特别想到你,而是想到了很多糟糕的程序员,他们从来没有正确地应用过自己。他们最终只会造成更多的问题,花费更多的时间,为别人做更多的工作。