title: Behaviour of printf using length subspecifier with a string
body: <p>I'm curious how work printf and I have try many tricks like :</p>
  
  <pre><code>printf("Test 1: %hs\n", "hi");
  printf("Test 2: %hhs\n", "hi");
  printf("Test 3: %ls\n", "hi");
  printf("Test 4: %lls\n", "hi");
  printf("Test 5: %js\n", "hi");
  printf("Test 6: %zs\n", "hi");
  printf("Test 7: %ts", "hi");
  </code></pre>
  
  <p>I'm using printf with <code>s</code> specifier and all length modifier (usually used with numerical speficier (like <code>d / i / u / o ...</code>) and i'm getting strange output :</p>
  
  <pre><code>Test 1: hi
  Test 2: hi
  Test 3: Test 4: Test 5: Test 6: hi
  Test 7: hi
  </code></pre>
  
  <p>It seem's that the <code>l / ll / j</code> length modifiers make printf bug and stop to work (it doesn't print the <code>\n</code> but with all other length modifiers it seems to ignore the length modifier and work like normal usage).</p>
  
  <p>Why it follow this behavior ? </p>