striteri

유제민·2025년 4월 11일

42경산

목록 보기
14/17

striteri 뭐예여

String Iterate Indexed
문자열을 돌면서, 각 문자에 대해 인덱스를 넘겨주고, 주어진 함수 f가 문자를 직접 수정하도록 하는 함수

함수 원형: void ft_striteri(char s, void (f)(unsigned int, char*))
char *s: 원본 문자열
void (f)(unsigned int, char)): 적용할 함수 포인터**

strmapi와 striteri와 차이점

strmapi는 새 문자열을 만들어서 반환하니 메모리 할당이 필요하지만, strteri는 원본 문자열을 바로 수정하니 메모리 할당이 필요 없음.
strmapi: char f(unsigned int 1, int c) -> 반환 결과 리턴
striteri: void f(unsigned int i, char *c) -> 포인터로 수정

ft_striteri 구현

#include "libft.h"

void	ft_striteri(char *s, void (*f)(unsigned int, char*))
{
	unsigned int	i;

	if (!s || !f)
		return ;
	i = 0;
	while (s[i])
	{
		f(i, &s[i]);
		i++;
	}
}

너무 쉬워서 설명할게 업서요..

profile
무진장 게으른

0개의 댓글