atoi array to integer esimerkki

/*

Esimerkki atoi-funktion käytöstä

Anna luku merkkijonona ja muuta se luvuksi atoi-funktiolla. Tee ohjelma siten, että

se huolii ainoastaan kolme numeroa,herjaa, jos yritetään antaa kirjaimia.

Idea: Kysytään merkkejä getch=anna merkki, funktiolla ja kerätään annetut merkit

merkkijonoon. Muista merkkijonon indeksi= paikka jonossa, alkaa nollasta eli ensimmäisen

merkin järjestysnumero on nolla ja muistavielä,että merkkijono pitää päättää nollalla.

atoi=array to integer array=jono merkkejä, atoi muuttaa merkkijonon luvuksi,

Toimii dos ja Windows ympäristöissä

*/

#include <stdlib.h>

#include <stdio.h>

#include <tchar.h>

#include <conio.h>

void main()

{

//Ohjelma kysyy luvun ja tulostaa sitä vastaavan ASCII-merkin

char Merkkijono[10];//varataan kymmenen merkkiä pitkä merkkijono

int Luku=0;//lukuun talletetaan merkkijonosta atoi-funktiolla muutettu arvo

int Paikka=0;//merkin paikka merkkijonossa 0...2

while(234!=Luku)//silmukassa kunnes annetaan 234 Huom. != on EI

{

printf("\nANNA LUKU 1...255: ");

while(Paikka<3 && Merkkijono[Paikka-1]!=13)// 13 on Enter

{

Merkkijono[Paikka]=getche();//getche kysyy ja näyttää merkin

Paikka++;//lisätään paikkaa yhdellä= siirrytään seuraavaan kohtaan

//merkkijonossa

}

Merkkijono[Paikka]=0;//laitetaan viimeiseksi merkkijonon lopetusmerkki=0

Paikka=0;

Luku=atoi(Merkkijono);//muutetaan merkkijono luvuksi

if(Luku==0) printf("\nPyysin numeroita!!!!\7\7\7");

else if(Luku>255) printf("\nPyysin lukua < 255!!!!\7\7\7");

else printf("\nAntamasi merkki on: %c ja sen ASCII-arvo %d",Luku,Luku);

}//while silmukka loppuu

}

/* Selityksiä

!= EIHÄN

== ONHAN

&& JA

|| TAI

! EI

< PIENEMPI

> SUUREMPI

<= PIENEMPI TAI YHTÄSUURI

>= SUUREMPI TAI YHTÄSUURI

++ lisäys yhdellä

-- vähennys yhdellä

*/