비주얼 C++(Visual C++)은 C 및 C++ 프로그래밍 언어를 사용하여 개발을 진행하기 위해 마이크로소프트가 제공하는 통합개발환경(IDE)이다. 비주얼 씨뿔뿔이라고 읽는다. VC++ 또는 MSVC라고 쓰기도 한다. 제4세대 프로그래밍 언어(4GL)에 속한다. 마이크로소프트의 비주얼 스튜디오(Visual Studio)에 통합되었다.
소개
Microsoft Visual C ++는 Microsoft 의 C , C ++ 및 C ++ / CLI 프로그래밍 언어 용 IDE (Integrated Development Environment) 제품이다. MSVC는 독점 소프트웨어다. 그것은 원래 독립적인 제품 이었지만 Visual Studio 의 일부가 되었으며 평가판 및 프리웨어 형태 로 제공되었다 .
역사
16비트 버전
- 1983 년 마이크로 소프트의 첫 C 제품인 마이크로 소프트 C 1.0 은 래티스 C를 기반으로 한다.
- C 2.0은 대형 모델 지원을 추가했다.
- C 3.0은 마이크로 소프트 내부에서 최초로 개발 된 버전이다.
- C 4.0은 소스 레벨 디버거인 CodeView를 추가했다.
- C 5.0은 루프 최적화와 64K 보다 큰 배열이 지원되었다.
- 1989 년에 출시된 C 6.0은 글로벌 플로우 분석, 소스 브라우저 및 새로운 디버거가 추가되었으며 선택적인 C ++ 프론트 엔드가 포함되었다.
- 1992 년에 릴리스된 C / C ++ 7.0은 C ++ 및 MFC (Microsoft Foundation Class Library) 1.0에 대한 기본 제공 지원이 추가되었다 .
- 1993 년 2월에 발표 된 ' Visual'C ++의 첫 번째 버전인 Visual C ++ 1.0은 MFC 2.0이 포함되어 있다. Cfront 2.1 호환 이며 두 가지 버전으로 제공된다.
- 1993 년 12월에 MFC 2.5를 포함하고 MFC에 OLE 2.0 및 ODBC 지원을 Visual C ++ 1.5에 추가했다. Visual C ++의 첫 번째 버전은 CD-ROM 에서만 제공되었다.
32비트 버전
- Visual C ++ 1.0은 Intel 386 아키텍처 용 32 비트 개발 의 첫 번째 버전이었습니다.16 비트 버전 1.5가 출시되었을 때 발표되었지만 OLE2 및 ODBC에 대한 지원은 포함되지 않았습니다. 또한 Visual C ++ 1.5가 포함 된 Visual C ++ 16 / 32-bit Suite라는 번들로 제공됩니다.
호환성
ABI
- Visual C ++ 컴파일러 ABI 는 주요 컴파일러 릴리즈간에 역사적으로 바뀌 었다. 이것은 특히 컨테이너 크기가 컴파일러 릴리즈 사이에서 많이 달라지는 STL 컨테이너의 경우다. 따라서 Microsoft는 다른 컴파일러 버전을 사용하여 클라이언트 코드를 컴파일 할 때 모듈 경계에서 C ++ 인터페이스를 사용하지 말 것을 권장한다. C ++ 대신 또는 COM 인터페이스를 사용하는 것이 좋다. 이 인터페이스는 컴파일러 릴리스간에 안정적인 ABI를 갖도록 설계되었다.
C 런타임 라이브러리
- Visual C ++는 다른 버전의 C 런타임 라이브러리와 함께 제공된다. 이는 사용자가 사용 가능한 라이브러리 중 하나를 사용하여 코드를 컴파일 할 수 있음을 의미한다. 그러나 이로 인해 동일한 프로그램에서 다른 구성 요소 ( DLL , EXE )를 사용할 때 몇 가지 문제가 발생할 수 있다. 일반적인 예제는 다른 라이브러리를 사용하는 프로그램 이다. 사용자는 의미를 이해하지 않는 한 모든 프로그램 구성 요소에 대해 동일한 C 런타임을 사용해야한다 . MS는 가능한 문제를 피하기 위해 다중 스레드 동적 연결 라이브러리 (/ MD 또는 / MDd 컴파일러 옵션)를 사용하도록 권장한다.
제품
사용 가능한 제품은 마이크로소프트 비주얼 C++ 2017 익스프레스 에디션, 마이크로소프트 비주얼 스튜디오 2017 프로페셔널, 마이크로소프트 비주얼 스튜디오 2017 커뮤니티, 마이크로소프트 비주얼 스튜디오 2017 엔터프라이즈가 있다. 비주얼 C++ 은 비주얼 스튜디오 안에 포함되어 있다.
익스프레스 에디션과 커뮤니티 에디션은 공식 사이트에서 무료로 내려 받아 설치하고 사용할 수 있다.
사용법
- 작업공간 마련하기 : Visual c++ 실행 -> File -> New -> C언어 기초 프로그램은 도스 프롬프트 기반이므로 Project탭에서 "Win 32 Console Application" 선택 -> project name 과 location 입력 후 OK 버튼 -> 프로젝트 생성이 완료
- 프로그램 작성을 위한 파일 생성 : File -> New -> File탭 선택 -> "C++ Source File" 선택 -> 프로그램에 따라 확장자 .c 또는 .cpp C++ 프로그램은 확장자를 입력하지 않으면 자동으로 확장자가 .cpp가 된다. -> OK 버튼을 누르면 파일 생성 완료
- 컴파일 : 메뉴 -> Build -> compile 선택 또는 Ctrl + F7 -> 컴파일 완료
- 링크 연결 : 메뉴 -> Build -> Build 선택 또는 F7 -> 에러가 발생하지 않았다면 .exe 확장자를 갖는 실행파일이 만들어진다.
- 프로그램 실행 : 생성된 .exe 파일을 실행하는 방법 Ctrl + F5
각주
참고 문서
같이 보기
이 비주얼 C++ 문서는 프로그래밍에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.
|
개발 : 프로그래밍 □■⊕, 소프트웨어, 데이터, 솔루션, 보안, 하드웨어, 컴퓨터, 사무자동화, 인터넷, 모바일, 사물인터넷, 게임, 메타버스, 디자인
|
|
프로그래밍 언어
|
ASP • C 언어 • C++ • C# • CSS • D 언어 • HTML • HTML5 • JSP • PHP • R • XHTML • XML • XSLT • 고(Go) • 고급언어 • 기계어 • 델파이 • 러스트 • 루비 • 루아 • 리액트 • 리퀴디티 • 무브 • 미켈슨 • 베이직 • 브이비스크립트 • 비주얼 C++ • 비주얼베이직(VB) • 비주얼베이직닷넷(VB.NET) • 솔리디티 • 스몰토크 • 스위프트 언어 • 스칼라 • 스크립트 언어 • 알골 • 어셈블리 • 언리얼스크립트 • 얼랭 • 에이잭스(Ajax) • 엠에프씨(MFC) • 오브젝티브-C • 오브젝트 파스칼 • 오카멜 • 웹어셈블리(WASM) • 이와즘(eWASM) • 자바 • 자바스크립트 • 저급언어 • 제이슨(JSON) • 제이쿼리(jQuery) • 카멜 • 코볼 • 코틀린 • 콜드퓨전 • 타입스크립트 • 파스칼 • 파워스크립트 • 파이썬 • 펄(Perl) • 포트란 • 프로씨(Pro-C) • 피엘에스큐엘(PL/SQL) • 피엘원(PL/I) • 하스켈
|
|
개발방법론
|
CBD 개발방법론 • EA • 구조적 개발방법론 • 객체지향 개발방법론 • 라이브러리 • 람다 아키텍처 • 모듈 • 모듈화 • 벤치마킹 • 소프트웨어 개발방법론 • 스크럼 • 스프린트 • 아키텍처 • 아키텍트 • 애자일 • 웹개발방법론 • 정보공학 개발방법론 • 컴포넌트 • 테일러링 • 템플릿 • 폭포수 모델 • 프로젝트 • 프로토타입 • 피드백
|
|
코딩
|
EUC-KR • UTF-8 • 값 • 글루웨어 • 노팔로우 링크 • 두팔로우 링크 • 디버깅 • 디코딩 • 마크업 • 버그 • 부트스트랩 • 세이브포인트 • 소스코드 • 시큐어코딩 • 아스키 • 액티브엑스 • 오픈소스 • 유니코드 • 인코딩 • 재컴파일 • 주석 • 컴파일 • 컴퓨터 프로그램 • 코드 • 코딩 • 태그 • 테스트 • 테이블 • 텍스트 • 파싱 • 퍼블리싱 • 퓨니코드 • 하드코딩 • 하이퍼링크 • 하이퍼텍스트
|
|
프로그래밍
|
C 명령어 • 객체 • 객체지향 • 객체지향 프로그래밍 • 거짓 • 관계연산자 • 기본형 변수 • 널 • 논리 • 논리연산 • 논리연산자 • 다중상속 • 다형성 • 대입 • 대입문 • 대입연산자 • 더블 • 도스 명령어 • 디폴트 • 레지스터변수 • 루프 • 리눅스 명령어 • 리턴 • 메모리 주소 • 메소드 • 멤버 • 명령문 • 명령어 • 무한루프 • 문자 • 문자열 • 바이트 • 반복문 • 배열 • 변수 • 분기 • 분기문 • 불린 • 브레이크 • 비교연산자 • 비트연산자 • 산술연산자 • 상속 • 상수 • 생성자 • 선언 • 선언문 • 설정자 • 속성 • 스위치 • 스태틱 • 시프트연산자 • 실행 • 실행문 • 어노테이션 • 에코 • 역참조 • 연산 • 연산문 • 연산자 • 오버로딩 • 오버라이딩 • 외부변수 • 윈도우 명령어 • 유닉스 명령어 • 인스턴스 • 인스트럭션 • 인클루드 • 인터페이스 • 임포트 • 입력 • 입력문 • 입출력 • 입출력문 • 자료형(데이터 타입) • 자바 명령어 • 자바 예약어 • 자바 컬렉션 • 전역변수 • 접근자 • 접근제어자 • 정보은닉 • 정수형 • 정적변수 • 제어 • 제어문 • 제어자 • 조건 • 조건문 • 조건연산자 • 주소 • 증감연산자 • 지역변수 • 참 • 참조 • 참조변수 • 초기화 • 추상메소드 • 추상클래스 • 추상화 • 출력 • 출력문 • 캡슐화 • 케이스 • 클래스 • 파라미터(매개변수) • 파이널 • 패키지 • 퍼블릭 • 포인터 • 프라이빗 • 프로텍티드 • 필드(멤버변수) • 함수 • 환경변수
|
|
명령어
|
abstract • array • boolean • break • byte • case • char • continue • default • double • do while • echo • elif • else • else if • false • final • float • for • gosub • goto • if • if else • import • include • int • join • long • long long • null • print • printf • println • private • protected • public • return • scanf • short • stdio.h • static • string • switch • temp • then • true • unsigned • void • while
|
|
디자인패턴
|
구조패턴 • 동시성패턴 • 동시실행패턴 • 모델-뷰-컨트롤러 패턴 • 상태패턴 • 생성패턴 • 싱글톤패턴 • 아키텍처패턴 • 전략패턴 • 커맨드패턴 • 행동패턴
|
|
프로그래밍 인물
|
귀도 반 로썸 • 그레이스 머레이 호퍼 • 니클라우스 비르트 • 댄 브릭클린 • 더그 커팅 • 데니스 리치 • 리누스 토르발스 • 리처드 그린블라트 • 마거릿 해밀턴 • 마크 앤드리슨 • 빈트 서프 • 빌 게이츠 • 빌 조이 • 스티브 잡스 • 에이다 러브레이스 • 제임스 고슬링 • 척 벤턴 • 켄 톰슨 • 팀 패터슨
|
|
위키 : 자동차, 교통, 지역, 지도, 산업, 기업, 단체, 업무, 생활, 쇼핑, 블록체인, 암호화폐, 인공지능, 개발, 인물, 행사, 일반
|
|