21xrx.com
2025-04-01 03:23:16 Tuesday
文章检索 我的文章 写文章
C语言程序中的一些有趣代码
2023-06-16 18:12:15 深夜i     15     0
C语言 编程 有趣代码 自动化 窗口闪烁 二进制代码

C语言是程序员们经常使用的一种编程语言。虽然它有着它自己的特点和规范,但也有一些有趣的代码。这篇文章将介绍一些C语言程序中的有趣代码。

1. 让程序自动写出自己的代码

这个程序使用了C语言中的\__FILE__宏。它能够获取当前文件的文件名,这让编程变得更有趣。

#include 
#define cat(x,y) x##y
#define file_line_cat(x,y) cat(x,y)
#define stringize(x) #x
#define file_line_stringize(x) stringize(x)
const char *str =
#include file_line_stringize(__FILE__)
;
int main(void)
{
  printf("%s\n", str);
  return 0;
}

2. 让程序的窗口闪烁

这个程序能让程序的窗口闪烁。它能定期地改变窗口的标题,制造出一个闪烁的效果。

#include 
#include 
int main(void)
{
  char temp[1024];
  for(int i = 0; i < 1000; i++)
  {
    sprintf(temp, "Blink %d", i);
    SetConsoleTitleA(temp);
    Sleep(100);
  }
  return 0;
}

3. 让程序在运行时读取自己的二进制代码

这个程序能够在运行时读取自己的二进制代码,然后打印出来。

#include 
#include 
void print_self(void)
{
  char buf[256];
  FILE *fp = fopen(__FILE__, "rb");
  if(fp == NULL)
  {
    fprintf(stderr, "failed to open file: %s\n", __FILE__);
    exit(1);
  }
  while(fgets(buf, sizeof(buf), fp) != NULL)
  {
    printf("%s", buf);
  }
}
int main(void)
{
  print_self();
  return 0;
}

  
  

评论区

请求出错了