/* pvmjono.c - esimerkki tietueesta parametrina */ #include #include typedef struct { int pv,kk,vv; } Pvm_tyyppi; static char *VAARA_MUOTO="V„„r„ muoto!"; const char *muuta_jono_pvmksi(const char *jono, Pvm_tyyppi *pvm) { if ( sscanf(jono,"%d%*[./-]%d.%d",&pvm->pv,&pvm->kk,&pvm->vv) != 3 ) return VAARA_MUOTO; return NULL; } int tulosta_pvm_jono(const char *jono) { const char *viesti; Pvm_tyyppi pvm; viesti = muuta_jono_pvmksi(jono,&pvm); if ( viesti ) { printf("%s\n",viesti); return 1; } printf("%02d.%02d.%d",pvm.pv,pvm.kk,pvm.vv); return 0; } int main(void) { tulosta_pvm_jono("18.5.1992"); printf("\n"); tulosta_pvm_jono("12.3"); printf("\n"); return 0; }