Пример #1
0
void net_recv(void)
{
#define BUFSIZE 10240
	char buf[BUFSIZE];

	
	int bytes_read;



	bytes_read = recv(sock,buf,BUFSIZE, MSG_DONTWAIT);
//	bytes_read = recv(sock,buf,BUFSIZE, 0);

	if( bytes_read<0 )
	{
		if( ! ((errno==EAGAIN) || (errno==EWOULDBLOCK)) )
		{
			printf("recv failed - error %d!\n",errno);
			exitt(1);
		}
	}
	else if( bytes_read==0 )
	{
		printf("recv failed - closed! errno=%d\n",errno);
		exitt(1);
	}
	else // >0
	{
		parse_recv_data(buf,bytes_read);
	}

//	if( 4!=sscanf(buf,"%X<=%X:%X with %X",&addr,&dat_hi,&dat_lo,&sel) )
}
Пример #2
0
void net_init(void)
{
	listener = socket(AF_INET, SOCK_STREAM, 0);
	if(listener < 0)
	{
		perror("socket init error");
		exit(1);
	}
	
	int tr=1;
	
	setsockopt(listener,SOL_SOCKET,SO_REUSEADDR,&tr,sizeof(int));
    
	addr.sin_family = AF_INET;
	addr.sin_port = htons(12345);
	addr.sin_addr.s_addr = htonl(INADDR_ANY);
	if(bind(listener, (struct sockaddr *)&addr, sizeof(addr)) < 0)
	{
		perror("bind error");
		exit(2);
	}

	listen(listener, 1);
    
	sock = accept(listener, NULL, NULL);
	if(sock < 0)
	{
		perror("accept error");
		exitt(3);
	}
}
/*Yapılacak operasyonların fonksiyonu*/
char operations(char ch){

    switch(ch){
        case 'T':
        case 't':printf("%c",trans(ch)); break;
        
        case 'B':
        case 'b':printf("%c",buy(ch)); break;   
         
        case 'S':
        case 's':printf("%c",sell(ch)); break;
        
        case 'I':
        case 'i':printf("%c",inp(ch)); break;
        
        case 'O':
        case 'o':printf("%c",outp(ch)); break;
        
        case 'F':
        case 'f':printf("%c",rptfile(ch)); break;
        
        case 'C': 
        case 'c':printf("%c",rptcnsl(ch)); break;
        
        case 'E':
        case 'e':printf("%c",exitt(ch)); break;
        
    }   
    return 0;
    
}
Пример #4
0
void EntryDisplayState::handleInput(int input){
	int index=-1;
	UILibraryState * state = NULL;
	try {
			switch (input){
			case 1:
				cout << "please enter field index: ";
				cin >> index;
				if (!cin) {
					// user didn't input a number
					cin.clear(); // reset failbit
					cin.ignore(numeric_limits<streamsize>::max(), '\n'); //skip bad input
					// next, request user reinput
				}
				edit(index);
				break;
			case 2:
				exitt();
				break;
			default:
				break;
			}
	}catch (exception& e) {
		cout << "Standard exception: " << e.what() << endl;
	}
}
Пример #5
0
int main() {
  enterr(__FUNCTION__);

  int a, b;
  cout("Enter 2 integers (space separated): ");
  scanf("%d %d", &a, &b);

  int answer = sum(a, b);
  cout("Their sum is: %d\n", answer);

  exitt(__FUNCTION__);
  return 0;
}
/*Function definitions, etc.*/
int main(){
/*START_OF_MAIN*/
    char ch;
    char ch1;
/*END_OF_VARIABLES*/
/*Yatırım yapılacak urunun secim menusu*/
    printf("*****************INSTRUMENTS*****************\n");
    printf("                 TL: (L or l)\n");
    printf("                 USD: (D or d)\n");
    printf("                 Gold: (G or g)\n");
    printf("                 Investment Fund: (F or f)\n");
    printf("********************************************\n");
    printf("Istediginiz Yatirimin  Kodunu Giriniz:");
    scanf("%c",&ch1);  
 
/*Yapılacak operasyonların secim menusu*/    
    printf("\n*****************OPERATIONS*****************\n");
    printf(" Transaction:(T/t)\n");
    printf(" Buy:(B/b)\n");
    printf(" Sell:(S/s)\n");
    printf(" Input:(I/i)\n");
    printf(" Output:(O/o)\n");
    printf(" Report to File:(F/f)\n");
    printf(" Report to Console:(C/c)\n");
    printf(" Exit:(E/e)\n");
    printf("********************************************\n");
    printf("Istediginiz Islemin Islem Kodunu Giriniz:");
    scanf("\n%c",&ch);
 
 /*Fonksiyonların cagırılması*/   
    intruments(ch1);
    operations(ch);
    trans(ch);
    buy(ch);
    sell(ch);
    inp(ch);
    outp(ch);
    rptfile(ch);
    rptcnsl(ch);
    exitt(ch);
    return 0;
    /*END_OF_MAIN*/
}