【发布时间】:2016-03-03 19:16:20
【问题描述】:
给定一个字符串“红、黄、蓝、绿”,我需要编写一个函数来创建一个以颜色为元素的数组。我无法找到有关此问题的信息,因为我不允许使用 strtok 或 string.h 中的任何字符串操作函数。有什么建议吗?
这是我的代码:
int findLength(char string[]){
int l =0;
for(l = 0; string[l]!='\0'; l++){
}
return l;
};
char *stringToArray(char string[]){
int i = 0;
int j = 0;
char c = ',';
int n = 0;
int l = findLength(string);
char *str = (char *)malloc(l * sizeof(char));
while(string[i] != '\0'){
if(string[i] == c){
for(n = j; n < i; n++){
str[j++] += string[n];
}
}
i++;
}
printf("%s\n", str);
str = '\0';
return str;
}
int main(int argc, const char * argv[]) {
char *string = "red, blue, green,";
char *str = stringToArray(string);
free(str);
return 0;
}
【问题讨论】:
-
你在your previous question之后有什么具体问题吗?
-
到目前为止你的代码是什么?
-
@bruceg 我刚刚更新了我的代码。
标签: c arrays string function c-strings