I think the question you probably meant to ask is what are the disadvantages of small internal combustion engines such as the ones used in cars and trucks, compared to an electric motor.
A small engine has poor surface area to volume ratio in its combustion chamber and thus loses a lot of heat to the cooling system. It also has a very high amount of friction, although this is more of a piston engine characteristic (a turbine is technically internal combustion and has very low frictional loss).
Cargo ships use incredibly efficient large diesel engines. They don't have many transient load requirements so they can be sized up in displacement and run very slowly.
Semantically, an internal combustion engine has to burn fuel directly, so it can only run on a gas or liquid fuel heat source. You can collect some energy from the waste heat afterwards however using another heat engine. Power plants can be extremely efficient because of this, which is why charging your electric car is cheaper than buying gasoline or diesel even if the electricity was generated by burning oil, because the power plant doesn't have the same size and cost constraints and can extract more energy from the fuel.