#include <stdio.h>
#include <string.h> // For strlen
int main( ) {
char * s1 = "Hello" ; // Length 5
char * s2 = "This is a 43 character string exactly long." ; // Length 43
char * s3 = "This is a very very very long string that will be truncated at 43 characters." ; // Length 80
printf ( "Formatted: '%-43.43s'\n " , s1
) ; // Original len 5 -> "Hello" + 38 spaces
printf ( "Formatted: '%-43.43s'\n " , s2
) ; // Original len 43 -> "This is a 43 character string exactly long." // No truncation, no padding
printf ( "Formatted: '%-43.43s'\n " , s3
) ; // Original len 80 -> "This is a very very very long string t" // Truncated to 43 chars, no padding
printf ( "Example with a 10 char string:\n " ) ; printf ( "'%s'\n " , "1234567890" ) ; printf ( "Formatted: '%-43.43s'\n " , "1234567890" ) ; // "1234567890" + 33 spaces return 0 ;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdHJpbmcuaD4gLy8gRm9yIHN0cmxlbgoKaW50IG1haW4oKSB7CiAgICBjaGFyICpzMSA9ICJIZWxsbyI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTGVuZ3RoIDUKICAgIGNoYXIgKnMyID0gIlRoaXMgaXMgYSA0MyBjaGFyYWN0ZXIgc3RyaW5nIGV4YWN0bHkgbG9uZy4iOyAvLyBMZW5ndGggNDMKICAgIGNoYXIgKnMzID0gIlRoaXMgaXMgYSB2ZXJ5IHZlcnkgdmVyeSBsb25nIHN0cmluZyB0aGF0IHdpbGwgYmUgdHJ1bmNhdGVkIGF0IDQzIGNoYXJhY3RlcnMuIjsgLy8gTGVuZ3RoIDgwCgogICAgcHJpbnRmKCInJXMnIChsZW4gJXp1KVxuIiwgczEsIHN0cmxlbihzMSkpOwogICAgcHJpbnRmKCInJXMnIChsZW4gJXp1KVxuIiwgczIsIHN0cmxlbihzMikpOwogICAgcHJpbnRmKCInJXMnIChsZW4gJXp1KVxuIiwgczMsIHN0cmxlbihzMykpOwogICAgcHJpbnRmKCItLS1cbiIpOwoKICAgIHByaW50ZigiJyVzJ1xuIiwgczEpOwogICAgcHJpbnRmKCJGb3JtYXR0ZWQ6ICclLTQzLjQzcydcbiIsIHMxKTsgLy8gT3JpZ2luYWwgbGVuIDUgLT4gIkhlbGxvIiArIDM4IHNwYWNlcwoKICAgIHByaW50ZigiRm9ybWF0dGVkOiAnJS00My40M3MnXG4iLCBzMik7IC8vIE9yaWdpbmFsIGxlbiA0MyAtPiAiVGhpcyBpcyBhIDQzIGNoYXJhY3RlciBzdHJpbmcgZXhhY3RseSBsb25nLiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE5vIHRydW5jYXRpb24sIG5vIHBhZGRpbmcKCiAgICBwcmludGYoIkZvcm1hdHRlZDogJyUtNDMuNDNzJ1xuIiwgczMpOyAvLyBPcmlnaW5hbCBsZW4gODAgLT4gIlRoaXMgaXMgYSB2ZXJ5IHZlcnkgdmVyeSBsb25nIHN0cmluZyB0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVHJ1bmNhdGVkIHRvIDQzIGNoYXJzLCBubyBwYWRkaW5nCiAgICBwcmludGYoIi0tLVxuIik7CiAgICBwcmludGYoIkV4YW1wbGUgd2l0aCBhIDEwIGNoYXIgc3RyaW5nOlxuIik7CiAgICBwcmludGYoIiclcydcbiIsICIxMjM0NTY3ODkwIik7CiAgICBwcmludGYoIkZvcm1hdHRlZDogJyUtNDMuNDNzJ1xuIiwgIjEyMzQ1Njc4OTAiKTsgLy8gIjEyMzQ1Njc4OTAiICsgMzMgc3BhY2VzCiAgICByZXR1cm4gMDsKfQ==