Jak zjistit, výstup pro tento typ programu v c?

0

Otázka

#include <stdio.h>

int main()
{
    int var, rar;

    scanf("%d %d", &var, &rar);
    printf("%d %d", var, rar);
}

Pokud dám jako vstup bn nbvýstup bude -81319504 32767. Proč?

c output
2021-11-24 04:26:51
1

Nejlepší odpověď

1

Spustit tento samovysvětlující kód s různými vstupy.

#include<stdio.h>
int main(void)
{ 
    int var=42,rar=43;
    printf("Scanf return value, should be 2 in case of success: %d\n", scanf("%d %d",&var,&rar));
    printf("Values, 42 and 43 are inits of not successfully scanned ones: %d %d",var,rar);
}

Pro vstup "3 nb" se dostanete například:

Scanf návratovou hodnotu, by měla být 2 v případě úspěchu: 1
Hodnoty, 42 a 43 jsou vjeho není úspěšně snímán ty: 3 43

Pro vstup "bn 3" získáte:

Scanf návratovou hodnotu, by měla být 2 v případě úspěchu: 0
Hodnoty, 42 a 43 jsou vjeho není úspěšně snímán z nich: 42 43

Podrobné informace najdete v dokumentaci:

https://en.cppreference.com/w/c/io/fscanf

2021-11-24 07:41:45

Dělám to odpověď na duplicitní pro "ignoruji scanf. Jak mohu pochopit, co se děje?". Všichni se neváhejte přidat lepší odpovědi nebo kritizovat moje.
Yunnosch

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................