# Center heading over the border between columns in a table

I have a table that looks like this:

\documentclass[12pt,a4paper]{article}
\usepackage{booktabs}
\begin{document}
\begin{tabular}{rl}
\toprule
string & much longer string long  \\
string & much longer string long  \\
string & much longer string long  \\
string & much longer string long  \\
\end{tabular}
\end{document}


"heading" looks like it is a heading only of the second column. I would like it to be centered over the split between both columns so that it is clear that this is not the case. Alternative opinions about how to typeset this are also welcome

The space between two columns usually consists of the right \tabcolsep of the first column and the left \tabcolsep of the second column. The first column is already right-aligned, \rlap prints to the right, \kern\tabcolsep moves to the place between the two columns and \makebox[0pt] centers the text without occupying space for TeX.

\documentclass[12pt,a4paper]{article}
\usepackage{booktabs}
\begin{document}
\begin{tabular}{rl}
% variant: