char* zmgkgk(char* str,int index,char value) {
int len = strlen(str);
if (index > len) {
return NULL;
}
char*x= calloc(len+2, 1);
char* woduq = str;
for (int i = 0; i < index; i++) {
char* woduq = str;
x[i] = woduq[i];
}
x[index] = value;
strncpy(x + index + 1, str + index, len - index);
return x;
}
int size=5;
int* insert(int arr[],int index,int value,int len) {
if (size < index) {
return NULL;
}
int sizetmp = size;
if (len <= size) {
int *x=calloc(size * 2, (sizeof(int)));
memcpy(x, arr,sizeof(int));
int* ptr = arr;
ptr = ptr + size - 1;
while (ptr !=( arr+index - 1)) {
x[sizetmp--] = *ptr--;
}
x[index] = value;
free(arr);
return x;
}
int* ptr = arr;
ptr = ptr + size-1;
while (ptr!=(arr+index-1)) {
arr[sizetmp--] = *ptr;
ptr--;
}
arr[index] = value;
return arr;
}
문자열은 변경불가니 무조건 새로 동적할당해서하고
int 배열은 arraylist비슷하게해봤는데 테스트는 되긴한데 이렇게 하는게맞음? 초보라 질문좀..
해당 인덱스에 삽입할려면 해당인덱스 이후의 요소를 하나씩 옮기는건알겠는데 동적할당하고 포인터로 옴길려니 머리 ㅈㄴ아픔
해당 댓글은 삭제되었습니다.
strlen이 0이어도 작동은 잘 되긴하네요 int len은 배열의 길이를 받는거에여 그러고보니 insert부분이 좀 나사가빠진거 같긴한듯
ㄳㄳ insert부분은다시 해보겠습니다
변수명을 왜 저따구로 처하냐??넌 걍 안댈놈이다