Microsoft дает некоторые достойные указания для того, когда использовать InvariantCulture
свойство:
InvariantCulture... приложение должно использовать инвариантную культуру только для процессов, которые требуют независимых от культуры результатов, таких как форматирование и парсинг данных, которые сохраняются в файл. В других случаях это приводит к результатам, которые могли бы быть лингвистически неправильными или культурно несоответствующими.
Соображения безопасности
, Если решение безопасности будет принято на основе результата сравнения строк или изменения случая, Ваше приложение должно использовать порядковое сравнение, которое игнорирует регистр вместо того, чтобы использовать InvariantCulture. [...]
Строковые операции
, Если Ваше приложение должно выполнить чувствительную к культуре строковую операцию, которая не затронута значением CurrentCulture, оно должно использовать метод, который принимает параметр CultureInfo. [...]
Сохраняющиеся Данные
свойство InvariantCulture полезно для того, чтобы хранить данные, которые не будут отображены непосредственно пользователям. Хранить данные в независимом от культуры формате гарантирует известный формат, который не изменяется. Когда пользователи от различных культур получают доступ к данным, они могут быть отформатированы соответственно на основе определенного пользователя. [...]
стандартный вывод не сбрасывается, пока вы не выведете символ '\ n'.
попробуйте printf ("привет, мир \ n");
Обычно стандартный вывод буферизуется до тех пор, пока вы не:
\ n
символ fflush (stdout)
Сделайте одно перед вызовом delay ()
, и вы должны увидеть свой результат.
printf буферизует вывод, пока не будет выведена новая строка.
Добавьте fflush (stdout); для очистки буферов по запросу.
Когда вы вызываете printf, вы ничего не печатаете до тех пор, пока это действительно не понадобится: либо пока буфер не заполнится, либо вы не добавите новую строку. Или вы явно сбрасываете его.
Таким образом, вы можете сделать
printf("Something\n");
delay();
или
printf("Something");
fflush(stdout);
delay();
Технически это не должно даже компилироваться. В вызове delay ("sleep 3")
вы пытаетесь преобразовать const char *
в float
. Это должно быть:
void delay (float sec)
{
// ...
}
delay(3);