A general method for calculating the complex band structures of solids is presented. This method is adaptable to the pseudopotential, full-zone k-->.p-->, and tight-binding formalisms. The basic idea is to express the total Hamiltonian of the bulk material as a polynomial in a simple analytic function of the wave vector perpendicular to a given plane. A companion matrix associated with this polynomial is constructed, and then diagonalized. The resulting eigenvalues and eigenvectors give rise to the complex band structure and the evanescent Bloch states. Using these evanescent states, the bulk Green's function for fixed k¯ (wave vector parallel to the given plane) can be obtained from a simple analytic expression; thus the study of electronic properties associated with a planar defect in the solid is facilitated. For illustrative purposes, we present the complex band structure of Si calculated within the three different schemes and compare them. We also compute the bulk Green's function (with fixed k¯) and find the surface states for the ideal Si (100), (111), and (110) faces within the tight-binding formalism.