Gramaticalmente, sería más correcto decir:
- Las personas pueden contraer matrimonio libremente a partir de los 18 años (de edad).
- Las personas de 18 o más años pueden contraer matrimonio libremente.
De este modo, quedaría claro que quien tenga 18 años cumplidos está legalmente habilitado para contraer matrimonio.
No obstante, en textos legales es una convención (extensiva a la lengua en general) que "mayor de" incluye y "menor de" excluye a quienes hayan cumplido la edad referenciada.
La ley argentina (habría que ver qué ocurre en otros cuerpos jurídicos) es bien explícita al respecto y, si bien utiliza la frase "mayor de 18 años", aclara:
Artículo 126: Son menores las personas que no hubieren cumplido la edad de DIECIOCHO (18) años.
(Ley 26.579)
Más adelante, la misma ley dice:
Toda disposición legal que establezca derechos u obligaciones hasta la
mayoría de edad debe entenderse hasta los DIECIOCHO (18) años, excepto
en materia de previsión y seguridad social en que dichos beneficios se
extienden hasta los VEINTIUN (21) años, salvo que las leyes vigentes
establezcan una edad distinta.
La ley debe ser muy clara, pues alguien podría argumentar que "mayor de 18" es quien tiene a partir de 19 años. El hecho de decir que la minoría de edad se extiende hasta los 18 deja en claro que al cumplirse esos años se adquiere la mayoría de edad.
En este artículo del diccionario del español jurídico se usa "a partir de" para delimitar con más claridad las edades, y partiendo de este artículo llegué a otro buen ejemplo que busca desambiguar la lengua vulgar, que es la ley española:
Artículo 315.
La mayor edad empieza a los dieciocho años cumplidos.
Para el cómputo de los años de la mayoría de edad se incluirá completo el día del nacimiento.
He decidido terminar de editar esta respuesta con un comentario que hice arriba que me parece pertinente para que se entienda mi punto:
En mi respuesta sólo quise explicar cómo la ley, por su carácter estricto, aclara algo de la lengua común que a criterio de muchos legisladores puede ser ambiguo. La edad de los adultos se expresa en años. Si tengo 18 años y digo que tengo amigos mayores que yo, es muy probable que esos amigos no incluyan a los que tengan 18 años y 1 mes, o 18 años y 2 meses, etc. sino a los que tengan a partir de 19 años. Respecto de los de 18 y n meses, es muy probable que diga que tienen la misma edad que yo (sólo en algunos casos diré: Ah, pero tú eres mayor que yo porque me llevas X meses de diferencia).