본문 바로가기

   
Programming/C#

데이터타입(Variable)

반응형
변수(Variable)
 - 데이터 타입은 변수를 생성한다.
 - 생성된 변수에는 해당 데이터 타입의 데이터를 넣을 수 있다.
 - 프로그램이 사용할 데이터를 저장할 공간에 할당
 - 데이터의 의미가 확실해짐~!!! - 코드의 가독성이 높아짐 - 생산성이 높아짐 - 돈

변수선언
 - 데이터형 + 변수명;
 - int n1;
 - int n1, n2;

변수 초기화
- 변수명 = 값; //초기화
- 변수명 = 값; //치환

변수명 생성시 규칙
 - 문자 및 언더바, 숫자 사용
 - 숫자로 시작 불가능
 - 예약어 사용 불가능
 - 특수문자X
 - 대문자 X
 - 의미있게!! 

변수 선언시 Stack에 비어있는 한공간을 준다. (메모리 번지를 가지고 있다.) 메모리 번지가 복잡하기 때문에 변수명이라는 이름을 준다.

byte kor;(kor이라는 문패가 생긴다.) 
첫번째는 공간을 잡아주고 두번째는 제약을 정한다.  자료형의 크기는 중요하지 않고 형식이 중요하다
kor=100;

NULL = C#은 쓰레기값이 없다.  자바에선 쓰레기 값이 있는데 닷넷엔 없다고 하는군..

변수 : 선언되는 위치에 따라... 역할 다름
 1. 지역변수(Local Variable)
 - 메서드나 제어문 안에서 선언된 변수
 - 지역변수는 초기화 필수!!(값형식의 변수는 반드시 초기화를 해야한다.) 
 2. 정적변수, 고용변수(Static)
 3. 멤버변수(Member)

using System;

 

namespace Csharp

{

       class Ex03_Variable

       {

             public static void Main(string[] args)

             {

                    /*---------------------------

                                     국어점수

                    ---------------------------*/

 

 

                    /*---------------------------

                    stack영역의 어딘가에 1byte 공간이 할당 0~255사이의 정수만을 저장할 수 있는 공간 -> null값 가진다.

                    ---------------------------*/

                    //변수 - 표현이 변하는 수(데이터)

                    byte kor;

                    kor=70;//변수 초기화

                    //상수 - (표현이) 변하지 않는 수(데이터)

                    Console.WriteLine(80);

 

                    Console.WriteLine(kor);//변수 호출(사용) -> 출력

                    kor = 50;//기존 값을 버리고 새값을 취할수 있음!!

                   

                    Console.WriteLine(kor);

                    //변수는 결국 공간을 빌린것이기 때문에 치환이 가능한 것이다.

 

                    string language = "국어점수";

                    int num = 80;

                    Console.WriteLine(language);

                    Console.WriteLine(num);

 

                    Console.Clear();//cmd - cls명령어

 

                    //변수 생성

                    /*

                    byte kor;

                    byte math;

                    byte eng;

 

                    byte kor, math, eng;

                    */

 

                    //int n1;//-21~21

                    //n1 = 200;

                    //Console.WriteLine(n1);

 

                    //변수 생성 + 초기화

                    //int n2=200;

                    //Console.WriteLine(n2);

 

                    //a1, a2, a3

                    //int a1, a2=10, a3;

 

                    //변수형 짓는 규칙

 

                    string studentname;

                    studentname='안녕';

 

                    string student_name; //언더바사용

                    string student_name2;//숫자 혼용 가능

                    string 3student_name;//숫자로 시작 불가능!!

                    string student name;//공백 사용 불가능!!

                    string STUDENTNAME;//대문자는 되도록 사용하지 않도록 한다.

             }

       }

}

 

using System;

 

namespace Csharp

{

       class Ex04_Variable

       {

             public static void Main(string[] args)

             {

                    //형식별로 변수생성 -> 값을 대입

                    byte b1 = 255;//0~255

                    Console.WriteLine(b1);

                    long l1=1000000000000;

                    Console.WriteLine(l1);

                    float f1=3.14f;

                    Console.WriteLine(f1);

                    double d1=1.39394923942394;

                    Console.WriteLine(d1);

 

                    decimal m1=1000000000000;

                    Console.WriteLine(m1);

 

                    //bool

                    bool flag = true;

                    Console.WriteLine(flag);

 

                    char c1 = 'a';

                    Console.WriteLine(c1);

 

                    byte b3 = 1;

                    char c3 = '1';//캐릭터는 호따옴표로 하기로 닷넷에서 약속 되있다.

                    Console.WriteLine(b3);

                    Console.WriteLine(c3);

                    //char, byte에 선언된 1은 같은 형태가 아니다.

 

                    //문자열(string) ; 참조형

                    //1개이상의 문자집합

                    string name = "홍길동";

                    Console.WriteLine(name);

                    //string char 형태도 데이터 타입이 다르기 때문에 같은 문자여도 형태가 틀리다.

             }

       }

}

 

반응형