張衡字建平,河內人。
祖父張嶷,西魏河陽太守。
父親張光,北周萬州刺史。
張衡幼懷大志,有鯁直之風。
十五歲,到太學學習。
他用心學習,認真研究,被同輩人所推許。
周武帝遭太後之喪,卻與左右出去打獵。
張衡免冠露發,抓住武帝的坐騎,直言勸諫。
武帝嘉獎瞭他,賜他衣服一襲、良馬一匹,提拔他當漢王侍讀。
張衡又到沈重那裡學習《三禮》,略略推究大意。
累次升遷,到任掌朝大夫。
隋高祖受禪登基後,拜授他為司門侍郎。
到晉王楊廣為河北行臺時,張衡歷任刑部、度支二曹郎。
後因河北行臺廢置,授他為並州總管掾。
晉王楊廣轉而鎮守揚州後,張衡又當他的總管掾。
晉王很親重他。
張衡也盡忠竭力侍奉他。
奪太子之位的計謀,大多為張衡所提出。
因母喪離職,一年多後,重新作官,當揚州總管司馬,賜縑采三百段。
開皇中,熙州人李英林聚眾造反,設置文武百官。
朝廷以張衡為行軍總管,率領步兵、騎兵五萬人討伐平定叛軍。
授為開府,賜奴婢一百三十口,縑采五百段,另加金銀和牲畜。
晉王為皇太子後,授張衡為右庶子,兼任給事黃門侍郎。
煬帝繼位,他任給事黃門侍郎,升任銀青光祿大夫,不久任禦史大夫,很被煬帝親近看重。
大業三年(607),煬帝到榆林郡後,回到太原,對張衡說:“我想到你傢裡去,你為我作東道主吧。”張衡於是趕到河內,與張傢的人準備好牛肉美酒。
煬帝上太行山,開辟直路九十裡,以到他傢裡。
煬帝很喜歡那裡的山泉,留下來飲宴三天,因而對張衡說:“以前隨先皇帝拜謁太行山的時候,途經洛陽,看到這裡,深深遺憾不得相訪,不料今日得遂夙願。”張衡拜伏於地,謝謝皇上,並奉杯敬祝皇上。
煬帝更高興,賜他住宅旁的田地三十頃,良馬一匹,金帶,縑采六百段,衣服一襲,禦用食器一具。
張衡推辭,煬帝說:“天子到瞭哪裡,之所以叫‘幸’,就是因為這。
不必推辭瞭。”張衡又給煬帝獻食,煬帝下令賜給公卿,一直到衛士們,無不沾光。
張衡因是煬帝當藩王時的故交,恩寵無人可比,很有些驕貴。
次年,煬帝到汾陽宮,宴請隨從官吏,特賜絹帛五百匹。
當時煬帝想擴建汾陽宮,讓張衡和紀弘整畫好圖紙奏上。
張衡借機進諫說:“這幾年勞役繁多,百姓疲憊,請您留點神,稍稍少搞點這類事。”煬帝心裡很不舒服。
煬帝曾看著張衡,對侍臣們說:“張衡自以為因為他的計謀,才讓我有天下。”當時齊王楊..失愛於煬帝,煬帝秘密讓人找楊..的過失。
有人告張衡違反制度,將伊闕令皇甫詡帶到汾陽宮。
又說以前煬帝到涿郡以及祭祠恒嶽時,那些來謁見的父老鄉親,衣冠大多不整。
煬帝怪罪張衡,身為司法官,不能檢舉處理這些問題,讓他出京當榆林太守。
次年,煬帝又到汾陽宮,張衡正在督促勞役修築樓煩城,因而拜見煬帝。
煬帝厭惡張衡沒有消瘦,以為他不想過失,因此對張衡說:“你長得很肥,應暫且回到郡裡去。”張衡又到榆林郡去。
繼而令張衡監督修江都宮的勞役。
有人到張衡那裡告監修江都宮的人,張衡不為他處理,卻把狀紙交給那個監工,這個人吃瞭監工更大的虧。
禮部尚書楊玄感出使到江都,這個人到玄感處喊冤。
玄感自然認為張衡的作法不對。
到與張衡相見時,玄感又沒說什麼。
張衡又先對玄感說:“薛道衡真是被冤死的。”玄感把這些事都報告給瞭煬帝。
江都丞王世充又奏張衡頻頻減少勞役的飯食。
煬帝於是發怒,把張衡關起來,送到江都市,將要殺他,過瞭很久才放他,除名為民,放他回老傢鄉裡。
煬帝常令親信窺探張衡在作些什麼。
大業八年(612),煬帝從遼東回到京都,張衡的小妾說他心懷怨恨,誹謗朝政,煬帝竟然賜他在傢裡自盡。
他臨死時大聲說:“我為世人作瞭什麼好事哦,還想久活!”監督行刑的塞耳不敢聽,下令殺瞭他。
義寧中(617),因其死於無辜,追贈他為大將軍、南陽郡公。
謚號叫“忠”。
有子叫張希玄。