Vienna
1일차 본문
오늘부터는 C#도 공부하기로 했다. 교재는 "이것이 C#이다"를 구매했다. 게임잡을 둘러보니 온코테는 C++로 보고 실무는 C#으로 진행되는 경우도 흔하게 볼 수 있었다. 그리고 아무래도 유니티를 쓰려면 C#을 쓸 줄 알아야하니 공부하기로 했다.
이전에도 C#으로 간단한 프로그램을 만든 적이 있었지만 본격적으로 공부하는 건 이번이 처음이다.
1. 실습_Hello World
C#의 기초적인 부분은 대강 알고 있기는 하지만, 새 언어를 배울 때마다 Hello World 파일을 만들지 않으면 뭔가 빼먹은 기분이 들어서 패스하지 않고 따라해보았다.
using System;
using static System.Console;
namespace Hello
{
class Program
{
static void Main(string[] args)
{
if (args.Length == 0)
{
WriteLine("사용법: Hello.exe <이름>");
return;
}
WriteLine("Hello, {0}!",args[0]);
}
}
}
2. 연습문제1
using System;
namespace 연습문제1_35page
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("여러분, 안녕하세요?");
Console.WriteLine("반갑습니다!");
}
}
}
3. 실습_IntegralTypes
using System;
namespace _3장_IntegralTypes_49page
{
class Program
{
static void Main(string[] args)
{
sbyte a = -10;
byte b = 40;
Console.WriteLine($"a={a},b={b}");
short c = -30000;
ushort d = 6000;
Console.WriteLine($"c={c},d={d}");
int e = -10_000_000;
uint f = 300_000_000;
Console.WriteLine($"e={e},f={f}");
long g = -500_000_000_000;
ulong h = 2_000_000_000_000_000_000;
Console.WriteLine($"g={g},h={h}");
}
}
}
4. 실습_IntegerLiterals
using System;
namespace _3장_IntegerLiterals_51page
{
class Program
{
static void Main(string[] args)
{
byte a = 240; // 10진수 리터럴
Console.WriteLine($"a={a}");
byte b = 0b1111_0000; // 2진수 리터럴
Console.WriteLine($"b={b}");
byte c = 0XF0; // 16진수 리터럴
Console.WriteLine($"c={c}");
uint d = 0x1234_abcd; // 16진수 리터럴
Console.WriteLine($"d={d}");
}
}
}
5. 실습_SignedUnsigned
using System;
namespace _3장_SignedUnsigned_54page
{
class Program
{
static void Main(string[] args)
{
byte a = 255;
sbyte b = (sbyte)a;
Console.WriteLine(a);
Console.WriteLine(b);
}
}
}
6. 실습_Overflow
using System;
namespace _3장_Overflow_55page
{
class Program
{
static void Main(string[] args)
{
uint a = uint.MaxValue;
Console.WriteLine(a);
a++;
Console.WriteLine(a);
}
}
}
7. 실습_FloatintPoint
using System;
namespace _3장_FloatintPoint_58page
{
class Program
{
static void Main(string[] args)
{
float a = 3.1415_9265_3589_7932_3846f;
Console.WriteLine(a);
double b = 3.1415_9265_3589_7932_3846;
Console.WriteLine(b);
}
}
}
8. 실습_Decimal
using System;
namespace _3장_Demical_60page
{
class Program
{
static void Main(string[] args)
{
float a = 3.1415_9265_3589_7932_3846_2643_3832_79f;
double b = 3.1415_9265_3589_7932_3846_2643_3832_79;
decimal c = 3.1415_9265_3589_7932_3846_2643_3832_79m;
Console.WriteLine(a);
Console.WriteLine(b);
Console.WriteLine(c);
}
}
}
9. 실습_Char
using System;
namespace _3장_Char_61page
{
class Program
{
static void Main(string[] args)
{
char a = '안';
char b = '녕';
char c = '하';
char d = '세';
char e = '요';
Console.Write(a);
Console.Write(b);
Console.Write(c);
Console.Write(d);
Console.Write(e);
Console.WriteLine();
}
}
}
10. 실습_String
using System;
namespace _3장_String_63page
{
class Program
{
static void Main(string[] args)
{
string a = "안녕하세요?";
string b = "김팁입니다.";
Console.WriteLine(a);
Console.WriteLine(b);
}
}
}
11. 실습_Bool
using System;
namespace _3장_Bool_65page
{
class Program
{
static void Main(string[] args)
{
bool a = true;
bool b = false;
Console.WriteLine(a);
Console.WriteLine(b);
}
}
}
12. 실습_Object
using System;
namespace _3장_Object_67page
{
class Program
{
static void Main(string[] args)
{
object a = 123;
object b = 3.141592653589793238462643383279m;
object c = true;
object d = "안녕하세요";
Console.WriteLine(a);
Console.WriteLine(b);
Console.WriteLine(c);
Console.WriteLine(d);
}
}
}
13. 실습_BoxingUnboxing
using System;
namespace _3장_BoxingUnboxing_69page
{
class Program
{
static void Main(string[] args)
{
int a = 123;
object b = (object)a;
int c = (int)b;
Console.WriteLine(a);
Console.WriteLine(b);
Console.WriteLine(c);
double x = 3.1414213;
object y = x;
double z = (double)y;
Console.WriteLine(x);
Console.WriteLine(y);
Console.WriteLine(z);
}
}
}
14. 실습_IntegralConversion
using System;
namespace _3장_IntegralConversion_71page
{
class Program
{
static void Main(string[] args)
{
sbyte a = 127;
Console.WriteLine(a);
int b = (int)a;
Console.WriteLine(b);
int x = 128;
Console.WriteLine(x);
sbyte y = (sbyte)x; // 오버 플로 발생
Console.WriteLine(y);
}
}
}
15. 실습_FloatConversion
using System;
namespace _3장_FloatConversion_73page
{
class Program
{
static void Main(string[] args)
{
float a = 69.6875f;
Console.WriteLine("a: {0}", a);
double b = (double)a;
Console.WriteLine("b: {0}", b);
Console.WriteLine("69.6875==b:{0}", 69.6875 == b);
float x = 0.1f;
Console.WriteLine("x: {0}", x);
double y = (double)x;
Console.WriteLine("x: {0}", y);
Console.WriteLine("0.1==y:{0}", 0.1 == y);
}
}
}
Comments