История изменений
Исправление MOPKOBKA, (текущая версия) :
Соотв. надо проверять если mbwidth(s)!= strlen(s), то выводим с заполнением пробельным символом «%*c%s\n», иначе - обычным способом «%30s\n»
Проще мерить через mbwidth и выводить с помощью «%*.c%s\n», вообще забыв о %30s.
Кстати, в отличие от ("%*s", 0, "")
, сообщение вида ("%*c", 0, ' ')
всегда будет выводить лишний символ.
Исправление MOPKOBKA, :
Соотв. надо проверять если mbwidth(s)!= strlen(s), то выводим с заполнением пробельным символом «%*c%s\n», иначе - обычным способом «%30s\n»
Проще мерить через mbwidth и выводить с помощью «%*.c%s\n», вообще забыв о %30s.
Кстати, в отличие от («%*s», 0, ""), сообщение вида («%*c», 0, ' ') всегда будет выводить лишний символ.
Исправление MOPKOBKA, :
Соотв. надо проверять если mbwidth(s)!= strlen(s), то выводим с заполнением пробельным символом «%*c%s\n», иначе - обычным способом «%30s\n»
Проще мерить через mbwidth и выводить с помощью «%*.c%s\n», вообще забыв о %30s.
Кстати, в отличие от («%*s», 0, ""), сообщение вида (%*c, 0, ' ') всегда будет выводить лишний символ.
Исходная версия MOPKOBKA, :
Соотв. надо проверять если mbwidth(s)!= strlen(s), то выводим с заполнением пробельным символом «%*c%s\n», иначе - обычным способом «%30s\n»
Проще мерить через mbwidth и выводить с помощью «%*.c%s\n», вообще забыв о %30s.