在C语言中,要按照RFC 1123格式打印格林威治时间(包括完整的星期名称、日期、月份、年份、小时、分钟和秒),你需要使用strftime函数,并且指定相应的格式化字符串。以下是一个示例代码:#include <stdio.h>  
#include <time.h>  int main() {  // 获取当前时间  time_t now = time(NULL);  // 创建一个用于格式化时间的结构体  struct tm *tm_info = gmtime(&now);  // 创建一个用于存储格式化后的时间的缓冲区  char time_str[50];  // 使用strftime函数格式化时间  strftime(time_str, sizeof(time_str), "%a, %d %b %Y %H:%M:%S GMT", tm_info);  // 打印格式化后的时间  printf("当前时间:%s\n", time_str);  return 0;  
}在这个示例代码中,我们首先使用time函数获取当前时间,并将其存储在now变量中。然后,我们使用gmtime函数将now转换为格林威治时间,并将结果存储在tm_info指针中。
接下来,我们创建一个长度为50的字符数组time_str,用于存储格式化后的时间。然后,我们使用strftime函数将格林威治时间格式化为RFC 1123格式,并存储在time_str中。在这个格式化字符串中,%a表示星期的缩写名称,%d表示日期,%b表示月份的缩写名称,%Y表示年份,%H表示小时(24小时制),%M表示分钟,%S表示秒,GMT表示格林威治时间。
最后,我们使用printf函数打印格式化后的时间。输出结果类似于以下格式:
当前时间:Wed, 19 Jul 2023 12:34:56 GMT