<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[DTXK1024的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/DTXK1024</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; DTXK1024]]></copyright><item><title><![CDATA[Linux终端无法启动图形界面应用，Could not connect to any X display.]]></title><link>https://blog.youkuaiyun.com/DTXK1024/article/details/109444728</link><guid>https://blog.youkuaiyun.com/DTXK1024/article/details/109444728</guid><author>DTXK1024</author><pubDate>Mon, 02 Nov 2020 11:01:18 +0800</pubDate><description><![CDATA[============================================
问题：安装图形桌面后，Linux通过终端命令无法启动图形应用，报错“Could not connect to any X display.”或“Gtk-WARNING **: 10:49:06.625: cannot open display: :0”等。
============================================
解决：以当前用户身份重新打开一个终端，输入“xhost +”命令后即可，如]]></description><category></category></item><item><title><![CDATA[C语言变长参数实现最简例程（printf函数实现原理解释）]]></title><link>https://blog.youkuaiyun.com/DTXK1024/article/details/107814277</link><guid>https://blog.youkuaiyun.com/DTXK1024/article/details/107814277</guid><author>DTXK1024</author><pubDate>Wed, 05 Aug 2020 14:34:30 +0800</pubDate><description><![CDATA[C语言变长参数实现最简例程（printf函数实现原理解释）
首先看代码，代码可直接运行
#include&lt;stdio.h&gt;
#include&lt;stdarg.h&gt; /* 必须要包含的头文件 */

#define END (-1) /* 用于定义参数结尾 */

/**
 * 对n个int型正整数做累加
 */
long dtxk_add(int start, ...)
{
    long sum = 0;
    int tmp = 0;
    va_list ap;
    s]]></description><category></category></item><item><title><![CDATA[Linux环境下VIM无法复制到系统剪切板解决方法]]></title><link>https://blog.youkuaiyun.com/DTXK1024/article/details/107813304</link><guid>https://blog.youkuaiyun.com/DTXK1024/article/details/107813304</guid><author>DTXK1024</author><pubDate>Wed, 05 Aug 2020 13:44:21 +0800</pubDate><description><![CDATA[Linux环境下 VIM无法复制到系统剪切板解决方法
【问题】【Linux Ubuntu系统中vim无法复制到系统剪切板】
首先确保安装了VIM，自带的vi/vim可能会有问题
（sudo apt-get install vim）
使用如下命令：




"+y
复制到系统剪贴板




"+p
从系统剪切板粘贴


如果仍然无法复制到系统剪切板，尝试执行如下命令：
sudo apt-get install vim-scripts vim-gtk vim-gnome
安装完成后关闭所有的vim窗口，重新打开]]></description><category></category></item><item><title><![CDATA[Java多线程情况下保持全局变量线程安全]]></title><link>https://blog.youkuaiyun.com/DTXK1024/article/details/106545618</link><guid>https://blog.youkuaiyun.com/DTXK1024/article/details/106545618</guid><author>DTXK1024</author><pubDate>Thu, 04 Jun 2020 14:17:15 +0800</pubDate><description><![CDATA[Java多线程情况下保持全局变量线程安全
Talk is cheap，show me the code.
不多说，直接看代码与结果
package com.dtxk.my;

public class Main 
{
	static int data1 = 0;
	static int data2 = 0;
	static ThreadSafeClass tsc = new ThreadSafeClass();

	public static void main(String [] args)
	{
		T]]></description><category></category></item><item><title><![CDATA[Android在非Activity类中实现Activity类中才能使用的方法]]></title><link>https://blog.youkuaiyun.com/DTXK1024/article/details/106340079</link><guid>https://blog.youkuaiyun.com/DTXK1024/article/details/106340079</guid><author>DTXK1024</author><pubDate>Mon, 25 May 2020 19:14:25 +0800</pubDate><description><![CDATA[Android编程中，有的方法只能在Activity类中才能实现，如Toast，但是比如在自己写的view类中有需要实现toast时候咋办呢。当然方法有很多，本文提供一种通过Java接口来实现的方法。在B类中执行只能在A类中可以运行的代码。
B类代码如下：
public class BClass {
	
	//声明一个接口
	private BInterface bintf;
	
	//在这个类里面创建一个接口
	interface BInterface
	{
		public void doSth();
]]></description><category></category></item><item><title><![CDATA[Java多态性-代码示例]]></title><link>https://blog.youkuaiyun.com/DTXK1024/article/details/106339988</link><guid>https://blog.youkuaiyun.com/DTXK1024/article/details/106339988</guid><author>DTXK1024</author><pubDate>Mon, 25 May 2020 19:07:04 +0800</pubDate><description><![CDATA[Java多态性代码示例
/**
 * 不同的实例做不同的事情
 * @author TangSky
 *
 */
public class Test
{
	public static void main(String[] args)
	{
		Animal dog = new Dog();
		Animal cat = new Cat();
		showWhichAnimal( dog );
		showWhichAnimal( cat );
	}
	
	/**
	 * 用于显示这个animal类是哪种动物]]></description><category></category></item><item><title><![CDATA[blender2.8设置玻璃材质]]></title><link>https://blog.youkuaiyun.com/DTXK1024/article/details/106063162</link><guid>https://blog.youkuaiyun.com/DTXK1024/article/details/106063162</guid><author>DTXK1024</author><pubDate>Mon, 11 May 2020 21:35:05 +0800</pubDate><description><![CDATA[blender2.8设置玻璃材质如图：
如图：



]]></description><category></category></item><item><title><![CDATA[ESP32出现错误expression: esp_event_loop_init]]></title><link>https://blog.youkuaiyun.com/DTXK1024/article/details/104203696</link><guid>https://blog.youkuaiyun.com/DTXK1024/article/details/104203696</guid><author>DTXK1024</author><pubDate>Thu, 06 Feb 2020 22:37:49 +0800</pubDate><description><![CDATA[ESP32出现错误expression: esp_event_loop_init
如果你在第二次进行连接WiFi后出现此错误，可以尝试在第二次WiFi配置中删除此行代码：
ESP_ERROR_CHECK(esp_event_loop_init(wifi_event_handler, NULL));


...]]></description><category></category></item><item><title><![CDATA[ESP32语音播报 MP3播放存储方法]]></title><link>https://blog.youkuaiyun.com/DTXK1024/article/details/104203006</link><guid>https://blog.youkuaiyun.com/DTXK1024/article/details/104203006</guid><author>DTXK1024</author><pubDate>Thu, 06 Feb 2020 22:22:08 +0800</pubDate><description><![CDATA[ESP32语音播报 MP3播放存储方法ESP32语音播报MP3播放的存储方法整体流程
ESP32语音播报MP3播放的存储方法
整体流程
	在实际项目中，往往需要产品能具有语音提示功能，这样可以带来很好的产品体验。
	ESP实现语音提示可以使用wav未压缩的音频格式直接播放，但此种方法需要占用大量的FLASH存储空间，而使用MP3格式的音频则只需要很少的FLASH空间，如图：
	![MP3格式](h...]]></description><category></category></item><item><title><![CDATA[ESP32播放MP3音乐-无需SD卡-WM8978-ESP32解码MP3]]></title><link>https://blog.youkuaiyun.com/DTXK1024/article/details/103032071</link><guid>https://blog.youkuaiyun.com/DTXK1024/article/details/103032071</guid><author>DTXK1024</author><pubDate>Tue, 12 Nov 2019 17:04:40 +0800</pubDate><description><![CDATA[ESP32播放MP3音乐（无需SD卡和外置RAM）
无需SD卡，FLASH大小4MB，非常适合用于智能家居的语音提示或者在线播放音乐。
一般来说，一个语音提示文件的MP3格式的大小约5KB，而未压缩的wav格式的大小则为60KB左右。如果拿2MB的FLASH空间来存储MP3格式的语音提示文件，则其数量要远大于WAV格式。
wav格式或pcm格式是未压缩格式，ESP32可以直接播放的，无需解码
所需...]]></description><category></category></item><item><title><![CDATA[Ubuntu图形界面root登录出现“sorry, that didn't work please try again”]]></title><link>https://blog.youkuaiyun.com/DTXK1024/article/details/102931118</link><guid>https://blog.youkuaiyun.com/DTXK1024/article/details/102931118</guid><author>DTXK1024</author><pubDate>Wed, 06 Nov 2019 11:11:29 +0800</pubDate><description><![CDATA[Ubuntu图形界面root登录出现“sorry, that didn’t work please try again”
1 以ROOT身份执行如下命令：
sudo vim /etc/pam.d/gdm-autologin

2 按下图注释掉那一行

注：不会使用vim的也可以将命令里的vim替换成gedit
3 以ROOT身份执行如下命令：

4 按下图注释掉那一行

END

...]]></description><category></category></item><item><title><![CDATA[PCB电路板3D模型3D渲染思路]]></title><link>https://blog.youkuaiyun.com/DTXK1024/article/details/102892618</link><guid>https://blog.youkuaiyun.com/DTXK1024/article/details/102892618</guid><author>DTXK1024</author><pubDate>Mon, 04 Nov 2019 11:06:39 +0800</pubDate><description><![CDATA[PCB电路板3D模型3D渲染思路首先看下效果图，如果不是你需要的效果，就可以不用看了工具第一步，截图得出AD里面的各个图层第二步，导出轮廓为矢量图第三步，处理线条第四步，导入各个层的矢量文件到三维软件中第五步，循环执行第四步，直到处理完所有图层第六步，电子元件建模第七步，装配第八步，重复第六和第七步，直到所有元件装配完毕第九步，渲染
首先看下效果图，如果不是你需要的效果，就可以不用看了


工具
...]]></description><category></category></item></channel></rss>