// No compila: dos struct son tipos distintos, aunque tengan los mismos campos.
#include <stdio.h>

typedef struct { int value; } Meters;
typedef struct { int value; } Seconds;

double speed(Meters distance, Seconds time) {
    return (double) distance.value / time.value;
}

int main(void) {
    Meters distance = {1000};
    Seconds time = {50};

    printf("%.2f\n", speed(time, distance));
    return 0;
}
