Переполнение функции Malloc в c - PullRequest
0 голосов
/ 10 октября 2019

Это мой код:

#include"stdio.h"

void main()
{
    char *name;
    name=(char*)malloc(5);
    name="ABCDEF";
    printf("add is %x and value is %s \n",name,name);
    name="ABCDEFGHIJKMNOPQUVWXYZIJKL";
    printf("add is %x and value is %s \n",name,name);   
}

Сначала я пытаюсь динамически предоставить значение для указателя char, используя malloc(), то есть 5.

Затем я печатаюзначение указателя после предоставления большего значения, чем выделенное пространство.

Однако. он все еще печатает всю строку, почему?

...