C编程-将数组元素拆分为单独的字符
假设我有一个数组={2,3,ABCD} 首先,我需要使第三个元素等于一个新数组。我知道char newArr[]=array[2]不起作用,那么我该怎么做呢 第二,我需要一个接一个地打印出newArr的字符。所以我的输出应该是 A. B C D 它们应该彼此分开。我知道如何用java实现这一点,但我不知道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
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当然,这是避免作弊的必要条件。我永远不会说你应该发布完整的源代码。远远不是这样;应该是完整和简洁的……注意,我第一次评论中的“你”变成了一个半途而废(英语中缺少适当的第三人称动画中性可能是一个相当大的问题);歧义是我的错。当我提到“你进入了工作岗位”,我并没有特别想到你,而是想到了很多糟糕的程序员,他们从来没有正确地应用过自己。他们最终只会造成更多的问题,花费更多的时间,为别人做更多的工作。