KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
So at the moment I have a function I made returning a static array, is there any way to make it return a dynamic array for the sake of efficiency? #include <stdio.h> #include <stdlib.h> #include "header.h" int *charpos(char *str, char ch) { int *bff, bc, ec, i, strln; static int ret[255]; bc = 0; ec = 0; for(i = 0; str[i] != '\0'; i++) ; strln = i; for(i = 0; i <= strln; i++) { if(str[i] == ch) ec++; } bff = malloc(sizeof(int)*ec); if(sizeof(bff) > sizeof(ret)) { free(bff); return 0; } for(i = 0; i <= 255; i++) ret[i] = '\0'; for(i = 0; i <= strln; i++) { if(str[i] == ch) { ret[bc] = i; bc++; } } free(bff); return ret; }
Tags (comma-separated)
Save Edits
Cancel