본문 바로가기

: ) C언어4

쓰레기값 주의 cnt 변수를 0으로 초기화하지 않았을 때 결과가 잘 나오지 않았다. 변수를 꼭 초기화해서 사용하자 ! 2022. 5. 29.
바이트수 할당이 어려워요 #define SIZE 30 일 때 Place구조체가 28바이트 char buf[SIZE]; 를 하면 30바이트가 잘 할당된다. 그러나 char *buf = (char*)malloc(sizeof(Place)+1); (X) char *buf = (char*)malloc(sizeof(SIZE)); (X) char *buf = (char*)malloc(sizeof(char)*30); (X) 위의 경우들은 모두 8바이트가 나온다... 왜지.. 실험 위의 출력 결과는 배열이랑 동적 할당이랑 다르게 동작하는건가... 우선 출력결과로 봐서 malloc에 30이 들어가면 8바이트가 할당됨을 확인했다. sizeof 때문인 것 같은데 30이라는 십진수가 ? ////////////// 아니 진짜 첫번째 줄은 바보같은 짓이었.. 2022. 5. 29.
PL과제3 strcpy를 하니까 널문자가 들어가서인지 구조체가 이상하게 찍혔다. memcpy를 해봐도 똑같았다. ----- name에 들어가는 문자열에 숫자가 없으면 잘 찍힌다. 왜지... 찾았다!!!! 구조체 안에 char *name[15] 였는데 숫자 때문이 아니라 문자열이 15만큼을 넘어가서 그런듯? 넉넉하게 [20]으로 바꾸니까 잘 작동한다. 2022. 5. 29.
리눅스 우분투 명령 프롬프트 변경하기 1. 명령어 vi ~/.bashrc 쳐서 해당 파일에 들어간다. 2. 위 사진의 해당 위치를 찾아 PS1부분을 PS1 = "명령 프롬프트 이름" 으로 바꾼다. 3. source ~/.bashrc 로 변경 사항을 저장한다. 예를 들어 PS1 = "minji>"로 바꾼다면 명령 프롬프트가 다음과 같이 뜬다. 2022. 3. 17.