大分県の南東部に位置する佐伯市・佐伯駅前の国道217号分岐から日向灘に面するリアス式海岸に沿って南下して宮崎県延岡市を中継し、宮崎県中央部の九州山地を東西に横断して、熊本県南部の人吉盆地にある湯前町の国道219号交点に至る、延長約228 kmの一般国道の路線である。主な通過地は宮崎県延岡市、東臼杵郡門川町、美郷町、椎葉村、熊本県球磨郡水上村である。宮崎県内の延岡市から門川町までの約22 kmにかけて、国道10号と重用する。東九州自動車道とは、佐伯 - 延岡間で平行し、蒲江インターチェンジ (IC) と北浦ICで直接接続する。指定当初は延岡市以外のほとんどが未改良区間であったが、日豊海岸沿いは道路の改良が進み、通行の難度は少々低くなった。これに対し、海岸沿いの大分県・宮崎県の県境付近と、美郷町南郷区鬼神野 - 熊本県水上村湯山の大河内越（椎葉村内）・湯山峠（椎葉村・水上村）の山岳部は、未改良ですれ違いが困難な箇所や路面状態も悪いことから、九州の代表的な「酷道」に数えられている。山間部は冬季は積雪、路面凍結等による交通規制が多く、夏季は台風や大雨による土砂災害、地すべり、落石、路肩決壊による全面通行止めや重量規制になることがある。
延暦13年（794年）、桓武天皇の平安京遷都の際に、王城鎮護のため平安京の四方に建てられた社の一つとされ、都の東に鎮座するころから東天王と称される。清和天皇が、貞観11年（869年）に造営し、播磨国廣峯から祭神を迎え祀り、当寺同地にあった東光寺の鎮守社の役割を果たした。治承2年（1178年）には高倉天皇の中宮徳子の御産の幣帛を賜ったことにより、安産の神として信仰される。元応元年（1319年）には後醍醐天皇により社殿を再建、正一位の神階と神宝を賜っている。安産の神とされる他、多産である兎が神使であること、祭神の素戔嗚尊と櫛稲田媛命に子供が多いことから子授けの神ともされ、神社創建の由来から方除けの神ともされている。
祭神として素戔嗚尊（すさのおのみこと）、櫛稲田媛命（くしなだひめのみこと）とその御子・三女五男八柱神を祀る。
モンツァ・エ・ブリアンツァ県南部に位置するコムーネで、県都モンツァから南東へ約4km、州都ミラノから北東へ約13km、ベルガモから東南東へ約34kmの距離にある。
現行の道路法（昭和27年法律第180号）に基づく二級国道として初回指定された1953年（昭和28年）では、東京環状線（横浜市 - 千葉市）として指定されていた。1963年（昭和38年）に一級国道16号（横浜市 - 横須賀市）および二級国道127号の一部（千葉市 - 木更津市）とともに一級国道16号として再編されて欠番となり、同日新たに指定された平塚相模原線に採番された。
次の例はC言語で書かれた簡単なプログラムを動的ループ展開したものである。アセンブリ言語の上掲の例とは異なり、変数 (i) が配列の要素を指すのに使われているため、コンパイラはポインタ/インデックスの計算コードを生成することになる。最大限最適化するには、全てのインデックス指定を定数に置き換えなければならない。#include<stdio.h>#define TOGETHER (8)int main(void){ int i = 0;  int entries = 50;                                 /* 総処理回数 */ int repeat;                                       /* ループ回数 */ int left = 0;                                     /* 余り（後で処理する） */  /* 要素数がBLOCKSIZEで割り切れないとしても、 */ /* 処理の大部分をwhileループで行うように、反復回数を得る。 */ repeat = (entries / TOGETHER);                    /* 反復回数 */ left  =  (entries % TOGETHER);                    /* 余りを計算 */ /* 8回ぶんの処理を展開 */ while( repeat-- > 0 )  {    printf("process(%d)\n", i    );    printf("process(%d)\n", i + 1);     printf("process(%d)\n", i + 2);     printf("process(%d)\n", i + 3);     printf("process(%d)\n", i + 4);     printf("process(%d)\n", i + 5);     printf("process(%d)\n", i + 6);     printf("process(%d)\n", i + 7);     /* インデックスをまとめて更新 */    i += TOGETHER;   } /* switch文を使い、caseラベルのジャンプすることで余りの部分を処理する。 */ /* フォールスルーにより、余りのぶんを全部処理する。 */ switch (left)  {     case 7 : printf("process(%d)\n", i + 6);      case 6 : printf("process(%d)\n", i + 5);      case 5 : printf("process(%d)\n", i + 4);      case 4 : printf("process(%d)\n", i + 3);      case 3 : printf("process(%d)\n", i + 2);      case 2 : printf("process(%d)\n", i + 1);      /* 余りが2の場合 */     case 1 : printf("process(%d)\n", i    );      /* 余りが1の場合 */     case 0 :                               ;      /* 割り切れた場合 */  }}