strcpy в c ведет себя по-другому

Я пытаюсь понять функцию strcpy(), но не смог. Как указано на этой странице, если длина целевой строки меньше чем исходная строка, все значение исходной строки не будет скопировано в строку назначения, вместо этого оно будет усечено. Но когда я попытался запустить эту программу

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
    char my_full_name[]="TomCruse_MI";
    char my_school_name[]="DON_BOSCO";
    strcpy(my_school_name, my_full_name);
    printf("After strcpy() function to copy my name into my school : \'%s\'\n" , my_school_name);
    printf("\n");
    return 0;
}

Я получаю как:

After strcpy() function to copy my name into my school : 'TomCruse_MI'

Мой вопрос в том, почему строка «TomCruse_MI» не усекается, даже если исходная строка больше, чем размер назначения.


person vicky    schedule 16.05.2018    source источник
comment
неопределенное поведение. Вы что-то сломали, но вы узнаете об этом позже в своей программе. Или сработает.   -  person Jean-François Fabre    schedule 16.05.2018
comment
Поведение другое --- Неопределенное поведение   -  person Vidor Vistrom    schedule 16.05.2018
comment
my_school_nane недостаточно большой !   -  person Stargateur    schedule 16.05.2018
comment
Тот сайт, на который вы ссылаетесь, в корне неправильный. Не будет никакого усечения и т. д. (поскольку функция не может знать размер целевого буфера), запрос на копирование большего количества символов, чем может вместить буфер, является просто Неопределенным Поведением (переполнением буфера), простым и понятным.   -  person Angew is no longer proud of SO    schedule 16.05.2018
comment
этот сайт действительно ужасен. Обратите внимание, что в приведенном примере используется больший размер места назначения, поэтому он работает... Не верьте всему, что есть в Интернете. Читайте StackOverflow :)   -  person Jean-François Fabre    schedule 16.05.2018
comment
Ничего себе, я также потрясен сайтом, на который ссылаются. Вот лучшая ссылка для использования. man7.org/linux/man-pages/man3/strcpy.3. html   -  person iamJP    schedule 16.05.2018
comment
Ба... еще один сайт программирования для черного списка...   -  person Eugene Sh.    schedule 16.05.2018
comment
Даже если вы ничего не знаете о C, нижний колонтитул Copyright 2018 © http://localhost/fresh2refresh должен заставить вас кричать...   -  person JJJ    schedule 16.05.2018
comment
Боже мой, кто управляет этим сайтом?   -  person Christian Gibbons    schedule 16.05.2018
comment
Некоторые энтузиасты Java?   -  person Jean-François Fabre    schedule 16.05.2018
comment
примечание: TomCruse_MI должно быть TomCruise_MI (уже эффект усечения?)   -  person Jean-François Fabre    schedule 16.05.2018