Я пытаюсь сгенерировать строки даты, соответствующие RFC 3339 (например, '2008-03-19T00: 00: 00.0000000-04: 00'), но, похоже, у меня возникла проблема с недействительным смещением. Я использую следующее:
private string GetDate(DateTime DateTime)
{
DateTime UtcDateTime = TimeZoneInfo.ConvertTimeToUtc(DateTime);
return XmlConvert.ToString(UtcDateTime, XmlDateTimeSerializationMode.Utc);
}
, но это возвращает мне такое значение, как «1977-02-03T05: 00: 00Z»
Я также пытался использовать определенный формат, например
utcDateTime.ToString("yyyy-MM-dd'T'HH:mm:ss.fffK", DateTimeFormatInfo.InvariantInfo);
Но с те же результаты.
См. эту существующую ссылку: Как мне проанализировать и преобразовать DateTime ' Я всегда слышал, что «if-выражения в циклах работают медленно!» Итак, в надежде (незначительно) повысить производительность, я разделил циклы на:
for(int i = 0; i < 200; i++) {
/* Do something computationally expensive */
if (!(i%20)) {
/* Do something else */
}
}
for(int i = 200; i < 10000; i++) {
/* Do something computationally expensive */
}
Будет ли gcc (с соответствующими флагами, например -O3) автоматически разбивать один цикл на два, или он разворачивается только для уменьшения количество итераций?