what does * mean in start of functions in C [duplicate]

  c++, function, pointers

I recently started programming with c and see a code as shown below I wonder why does it have"
*" at the start of the function?

int *inc(record *head, int key){
    record *tmp = head;
    while(tmp != NULL){
        if(tmp->key == key) {
            tmp->value = tmp->value + 1;
        tmp = tmp->next;
    return 0;

Source: Windows Questions C++