# memset
[프로그래머스] C언어 문자열 곱하기
문제 설명 문자열 mystring과 정수 k가 주어질 때, mystring을 k번 반복한 문자열을 return 하는 solution 함수를 작성해 주세요. 제한사항 1 ≤ my_string의 길이 ≤ 100 my_string은 영소문자로만 이루어져 있습니다. 1 ≤ k ≤ 100 입출력 예 my_string k result "string" 3 "stringstringstring" "love" 10 "lovelovelovelovelovelovelovelovelovelove" 입출력 예 설명 입출력 예 #1 예제 1번의 my_string은 "string"이고 이를 3번 반복한 문자열은 "stringstringstring"이므로 이를 return 합니다. 입출력 예 #2 예제 2번의 my_string은 "love"이고 이를 10번 반복한 문자열은 "lovelovelovelovelovelovelovelovelovelove"이므로 이를 return 합니다.
Array 초기화
array 초기화 방법에는 여러가지 방법이 존재한다. 그 중에서 간단한 것들을 알아 보았고, 현재는 vector container의 사용이 편해서 사용하고 있으나, 초기화에 대해서는 단순한 array 배열이 생각보다 쉬울 수 있음을 깨달았다. vector operation이 필요한 것이 아니라면 단순한 array의 사용도 고려해 봄직하다.

memset 누구냐 넌
c언어에서 또는 c++에서는 memset이라는 것이 있는데 나는 이것을 기수 정렬 떄문에 사용하게 되었다 하지만 왜 코드를 이렇게 짜는 지 몰라서 오늘은 나도 알고 여러분도 알자는 의미에서 memset을 알려드리겠습니다 metset은 처음에 받는 값인 (void *__b) 에 자신이 넣을 값을 정리해줍니다 . 그리고 (int __c) 에 자신이 모든 수를 채우고 싶은 값을 적어줍니다. 마지막으로 (sizet len) 에 자신이 앞에서 (void *_b) 의 사이즈를 정의해줍니다. 이떄 coun
[C언어] #9 동적메모리사용 (malloc, free, memset)
동적메모리 정적 메모리를 우선적으로 사용하는 것이 무조건 좋다 안될 때만 동적 메모리 사용하자 실수할 여지가 많고 속도가 느리기 때문에 동적 메모리의 소유주 메모리를 생성한 함수에서 메모리를 해제하자 함수 중간에 실수로 return해버리면 ..? 함수 내에서 동적메모리를 할당 하지않고 밖에서 할당한 메모리를 매개변수로 사용하는 것이 좋다. 어쩔 수 없이 함수 내에서 사용해야 한다면? 함수이름이나 변수명에 표기하자 소유주가 아니라면 메모리를 해제하지말 것 메모리할당 힙 메모리 관리자에게 xxx 바이트만큼 달라고 요청 관리자는 연속된 메모리 찾아서 반환 (메모리주소형태 : 포인터로 저장가능) malloc() size 바이트 만큼의 메모리를 반환해줌 초기화 안해준다 (처음 들어있는 값은 쓰레기값) 메모리가 없거나 실패하면 NULL반환 **반드시 free()와 함께
백준 2447번 별찍기 - 10
https://www.acmicpc.net/problem/2447 내 코드 다른 사람 코드 내 코드의 시간이 60ms인데 비해 상위권 코드들은 시간이 40ms대여서 다른 코드들을 읽어보기로 했다. an0520a님의 코드이다. 시간은 12ms, 메모리는 5792kb 소요. 결국 일차원 배열에 이를 넣고 배열 한칸 한칸에 문자를 넣는 것보다 빠른 memset를 이용해 빠르게 처리한 것이다.
memset함수에 대하여
이 게시글은 https://blockdmask.tistory.com/441 을 원본으로 하여 주석을 달며 공부한 내용을 기록한 게시글임을 명시합니다. 백준 2447번 별찍기 10의 다른 사람 코드를 공부하다가 memset이란 함수가 나와서 이를 공부하게 되었습니다. 여기부터 게시글 오늘 C언어 C++의 메모리를 초기화 해줄 수 있는 memset 함수에 대해서 시작해보겠습니다. C언어, C++에서의 memset 함수 memset 함수는 메모리의 내용(값)을 원하는 크기만큼 특정 값으로 세팅할 수 있는 함수 입니다. 함수이름이 정말 명확하죠? memory + setting 메모리를 (특정 값으로) 세팅한다. 기억하기 쉬울것 입니다. 그럼이제 함수를 하나하나 쪼개서 분해해 볼까요? 함수 원형 void* memset(void* ptr, int value, size_t num); 첫번째 인자 void* ptr은 세팅하고자 하는 메모리의 시작 주소. 즉, 그 주소를 가리키고
[알고리즘] 백준 5719
문제 s에서 e로 가는 문제인데 최단 경로를 피해서 도착할때 두번째 최단경로의 거리를 구하는 문제다. 접근 무작정 다익스트라로 접근하고나서 최단 거리를 어떻게 체크할지 고민이었다. 그래서 가이드 코드와 고민해본 결과 최단 거리를 저장하고 도착지점에서 시작점으로 거슬러가며 최단거리인지 체크해보는 것이다. memset memset 함수를 잘안쓰고 반복문으로 초기화를 했는데 여러번 테스트 케이스를 거치며 입력이 굉장히 많아 메모리 단위로 초기화하는 memset를 사용했다. 검색해보면 결과 memory.h나