Я столкнулся со странной проблемой с strtok()
, и мне было интересно, не могли бы вы объяснить мне, что происходит не так. Это всего лишь тестовая программа, чтобы увидеть, смогу ли я получить символ `'/` `, назначенный переменной, чтобы потом запустить некоторый код.
(точнее, я хочу узнать, когда пользователь хочет запустить терминальную команду, поэтому, чтобы убедиться, что она одна, я хочу использовать /
в качестве первого символа, чтобы я мог system()
оставшаяся строка)
Во всяком случае, это мой код.
#include <stdio.h>
int main()
{
char msg[256];
fgets(msg,256,stdin);
char character[256];
character[0] = strtok(msg,"/");
printf("\n%c --> this is the output", character[0]);
return 0;
}
результаты могут отличаться, printf()
может печатать ноль, буквы q
, a
, символ !
или неузнаваемые символы.
/test
� --> this is the output