Hallo,
Das ? steht als Platzhalter für genau ein Zeichen, in dieser Schreibweise für ein integer, also für 1 (= männlich) oder 2 (= weiblich). Du fragst aber 'M' als string ab.
Das Fragezeichen ist doch ein Platzhalter für eine Variable, was ja auch logisch erscheint, da sonst der Programmierer ja schon im vorhinein wissen müsste, was jemand als Variable übergibt.
Markus