728x90

프로그래밍/C,C++ 40

[Mac M1] includepath 재설정_g++, gcc / #include<bits/stdc++.h>

앞선 글에서 sudo만으로 해결한 줄 알았다. https://kyungtaek.tistory.com/104 [Mac M1]mkdir: bits Permission denied 오류 해결_#include #include 자주 사용하는 라이브러리들(string, stdio.h, iostream 등..)을 일일히 추가해야하는 번거로움을 없앨 수 있다. 정확히 말하면 C++의 표준라이브러리가 모두 포함되어있다고 한다. 특히 경로 지 kyungtaek.tistory.com 그런데 실행이 계속해서 되지 않았다. includepath를 다시 설정하라는 빨간 밑줄만 무한 반복 생성,,, 해결 과정 다른 분들의 경우에는 Gcc 설치경로 (InstalledDir) 위치인것으로 보였는데 나의경우에는 Xcode.app 안쪽에..

[Mac M1]mkdir: bits Permission denied 오류 해결_#include<bits/stdc++.h>

#include 자주 사용하는 라이브러리들(string, stdio.h, iostream 등..)을 일일히 추가해야하는 번거로움을 없앨 수 있다. 정확히 말하면 C++의 표준라이브러리가 모두 포함되어있다고 한다. 특히 경로 지정을 잘해줘야 하기때문에 Mac에서 이번에 경로지정을 해주면서 어떤 디렉토리경로로 파일 #inlcude 헤더파일이 실행되는지 알 수 있게 됬다. 터미널에서 cd, ls, ..를 반복적으로 사용하면 폴더를 들락날락 할수 있다. 그런데 정작 Library/Developer/CommandLineTools/usr/include를 들어가서 bits 폴더를 만들때 Permission denied가 나왔다. 언뜻봐도 허락되지 않았다는 뜻인데, 갑자기 윈도우에서 관리자권한 허용이 떠올라서 검색을 ..

C++ 입력 함수 / cin, cin.get(), getline()

cin - 에 포함되어 있다. - 표준 입력 버퍼에서 개행 문자를 제외한 값을 가져온다. - 공백이나 개행 입력 시 공백 이전까지의 값만 결과로 받아들인다. - 개행 문자를 입력 버퍼에 남겨둔다. 즉, cin으로 입력을 받게되면 공백문자에서 입력을 끊는다. 이러한 문제를 해결하기 위해서는 getline()이라는 함수를 사용해야한다. getline() getline()함수는 아래 두가지 라이브러리에 있다. 1. #include 2. #include istream에는 cin.getline()이 들어있다. - 문자 배열이며 마지막 글자가 '\0'(terminator)인 c-string을 입력 받는데 사용 - n-1개의 문자 개수만큼 읽어와 str에 저장 (n번째 문자는 NULL('\0')로 바꾼다.) - 세번..

C언어와 C++의 차이점이 무엇이 있을까?

자료구조 공부와 코딩테스트 준비를 하려다 보니 윤성우의 열혈자료구조에서는 C언어를 다루고 코딩테스트에서는 C++을 이용하려고 하여 두 언어의 차이점을 먼저 살펴보고자 한다. C는 우리가 프로그램이란것이 이런것, 포인터, 메모리란 이런거구나 이런부분을 배울 수 있다면 C++는 C의 언어적 특성들을 가져와서 객체지향형 프로그래밍이 가능하다는 점이다. C++을 통해 좀 더 업그레이드 된 프로그램을 경험 할 수 있다. C와 C++을 비교해보자 C 키워드 1. 데이터형 char, int, short, long, unsigned, float, double, struct, union, typedef *union: 하나의 데이터형을 비트단위로 짤라서 사용할 수 있도록 해줌 2. 반복문 for, while, do whi..

자료형(정수형, 실수형) 범위를 알아보자

기초적인 코딩테스트 문제를 풀다보면 자료형의 범위를 초과하여 풀이에 실패하는 경우가 많아서 정확히 알고 넘어가고자 정리한다. 가장 대표적인 부분만 정리하여 기억속에 남기고자 한다. 정수형 자료형 char : 1바이트 : -128 ~ 127 short : 2바이트 : -32,768 ~ 32,767 int : 4바이트 : -2,147,483,648 ~ 2,147,483,647 long long : 8바이트 : -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 1바이트는 비트 8개를 의미한다. 즉, 4바이트는 32비트를 의미하며 2의 32제곱 만큼의 크기를 갖는다. unsigned가 붙은 자료형이 있는데 이는 부호비트 1비트를 부호대신 범위를 표현하는데 사용하여..

c++ string::find() , string에서 특정 문자열을 찾아내는 함수

#include의 find함수는 특정 문자열을 string안에서 찾을때 사용하면 편리한 함수이다. find( "찾고자 하는 문자열") 을 사용하면 찾고자 하는 문자열의 시작위치를 반환한다. find("찾고자 하는 문자열" , index)를 사용하면 문자열의 index뒤부터 찾고자 하는 문자열을 검색하여 시작위치를 반환한다. int i = 0; string str = "hello world"; i = str.find("hello"); i == 0 을 반환한다. i = str.find("hello",3); i == std:npos를 반환한다. >> npos는 찾지못했다는 뜻이다. 쓰레기값이 반환된다는 말과 같다. 따라서 코딩테스트 등에서 사용할때 if(i == std:npos) { } 이런식으로 문자열을 못..

728x90