Написах този код, като един вид поглед напред.
int main() {
char a[100];
char b[100];
scanf("%s", a);
if (a[0] == '@') {
scanf("{%s}", b);
}
printf("%s\n", b);
}
По някаква причина получавам segfault, след като натиснах enter за първи път, въведеното ми беше @hi
. Какво става?
char *a = "0";
Вие присвоявате глобално съхранен низ с дължина 2 вa
. Когато го презапишете сscanf
, пишете 4 знака (включително NULL). - person Mysticial   schedule 20.09.2011char a[100];
иchar b[100];
. - person Mysticial   schedule 20.09.2011