城姓的起源主要有兩個淵源:
源於地名:
出自古代人群集居地城池,屬於以居邑名稱為氏。
據史籍《風俗通》記載,古代人們為安全而築牆圍城,住在城內者有以城為姓氏,稱城氏。
古代姓氏中以地名為氏者頗多,如住在城池東門的以東門為氏,住在西門的以西門為氏,住在南郭的以南郭為氏等,因此產生了城氏、池氏、關氏等姓氏。
源於子姓:
出自春秋時期宋國大夫司城,屬於以官職稱謂為氏。
據史籍《左傳·文公十六年》記載,春秋時期宋國公子盪被封為司城,史稱其為「司城盪」。
司城是專職負責類似後世工部的官吏,負責執掌「水土事、凡營城起邑」等事務。
到宋國第十二代君主宋桓公子御說執政時期,為了避宋武公子司空的名諱,將官稱「司空」改為「司城」。
綜上所述,城姓的起源既有源於地名的城氏,也有源於官職稱謂的司城盪,這兩種淵源共同構成了城姓的歷史背景。