'c#'에 해당되는 글 2건

  1. 2010.07.23 C# - GPS_timer(2) : Server
  2. 2010.05.03 C# 컬렉션기본 스택(Stack), 큐(Queue)


GPS_timer 는 크게 서버(PC역할_폼형식)와 클라이언트(단말기역할_콘솔형식)로 나누어져 있습니다. 서버는 단지 출력의 역할을 합니다.

실행시 클라이언트의 편의를 위해 자신의 아이피를 화면에 출력해 줍니다.

using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Collections.Generic;
using System.Linq;

namespace server
{
    class Program
    {
        static void Main(string[] args)
        {
            string st_message;

            IPHostEntry IPHost = Dns.GetHostByName(Dns.GetHostName());          
            IPAddress ip = IPAddress.Parse(IPHost.AddressList[0].ToString());         
           
            IPEndPoint endPoint = new IPEndPoint(ip, 8000);//인자값 : IPAddress,포트번호
             Console.WriteLine("클라이언트의 요청을 기다리고 있습니다 (서버주소 : " + IPHost.AddressList[0].ToString()+")");
            
            while (true)
            {
                //////////////////////////////////////////////////////////////////////////수신부

                Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

                socket.Bind(endPoint);

                socket.Listen(10);
   
                Socket clientSocket = socket.Accept();

                Console.WriteLine("클라이언트로부터 데이터를 수신하였습니다.");

                byte[] receiveBuffer = new byte[512];


                try
                {
                    int length = clientSocket.Receive(receiveBuffer, receiveBuffer.Length, SocketFlags.None);
                    string result = Encoding.UTF8.GetString(receiveBuffer, 0, length);

                    Console.WriteLine("받은 데이터 : " + result);
                    socket.Close();
                }
                    
                catch (SocketException e)
                {
 
                }
            }
        }
    }
}  
저작자 표시
신고
Creative Commons License
Creative Commons License
Posted by 준환이형님
TAG c#, GPS, Server, 서버

댓글을 달아 주세요

using System;
using System.Collections;

------------- 스택 ---------------
  public static void Main()
  {
   // 스택 객체 생성
   Stack myStack = new Stack();

   //스택에 값 입력하기
   myStack.Push(100);
   myStack.Push(200);
   myStack.Push(300);
   myStack.Push(400);
   myStack.Push(500);

   Console.WriteLine("마지막 스택크기:{0}",myStack.Count);
   int stackCount = myStack.Count;

   // 스택에서 값을 인출하기;

   for(int i=0;i<stackCount;i++)
    Console.WriteLine(myStack.Pop());

 -------------- 큐 ---------------

  class Class1
 {  
  public static void Main()
  {
   Queue myQueue = new Queue();
   Console.WriteLine("초기 큐의 크기:{0}", myQueue.Count);
   // 큐르ㅡㄹ 가득 채우기

   myQueue.Enqueue(100);
   myQueue.Enqueue(200);
   myQueue.Enqueue(300);
   myQueue.Enqueue(400);
   myQueue.Enqueue(500);

   Console.WriteLine("최종큐의 크기:{0}", myQueue.Count);

   //큐가 가진 크기 만큼 큐를 인출하기
   int queueCount = myQueue.Count;

            for(int i=1; i<queueCount; i++)
    Console.WriteLine("{0} Step:{1}",i,myQueue.Dequeue());
   myQueue.Enqueue(600);
   Console.WriteLine("가장 오래된 요소 인출하기:{0}", myQueue.Peek());
   Console.WriteLine("현재 큐의 크기: {0}",myQueue.Count);               
  }
 }
http://msdn.microsoft.com/ko-kr/library/system.collections.stack_members(v=VS.90).aspx
좋쿠낭 ~*

저작자 표시
신고
Creative Commons License
Creative Commons License
Posted by 준환이형님

댓글을 달아 주세요

티스토리 툴바