How is the complexity of algorithms to solve 3CNF (decision problem) specified?
An algorithm runs in polynomial time if its running time on an input $x$ is $O(|x|^k)$ for some $k$. Here $x$ is a (without loss of generality, binary) string, and $|x|$ is the length of $x$.

For 3CNF it also makes sense to consider the running time as the number of different variables. This is because if there are $n$ variables then there are $O(n^3)$ different clauses. The hardest 3CNF to solve are those in which no clause appears twice, and for such 3CNF, the size of the 3CNF (as a binary string) is polynomial in $n$. Therefore for such 3CNF, an algorithm is polynomial in the input size iff it is polynomial in the number of variables. An additional easy argument shows that 3CNF can be solved in polynomial time in the input size iff it can be solved in polynomial time in the number of variables.