ESP8266-01 y DHT22 lecturas nan

He montado un esp01 con un DHT22 con tu código y con esa librería no me deja compilarlo.
Con la librería que te he comentado y con el código que te adjunto me funciona perfectamente.
Si te sigue sin funcionar verifica que la resistencia entre el positivo del DHT22 y el pin de datos no sea demasiado baja o demasiado alta, yo tengo una puesta de 10K.
No he utilizado nada como pasarela, si no un servidor web.

#include <DHTesp.h>
#include <ESP8266WiFi.h>

DHTesp dht;

const char* ssid = "FELIZ";
const char* password = "NAVIDAD";
IPAddress ip(192, 168, 1, 205);
IPAddress gateway(192, 168, 1, 1);
IPAddress subnet(255, 255, 255, 0);
IPAddress dns(8, 8, 8, 8);

WiFiClient  client;

WiFiServer server(80);

void setup() 
  {
    dht.setup(2, DHTesp::DHT22);
    
    WiFi.config(ip, gateway, subnet, dns);
    WiFi.mode(WIFI_STA);
    WiFi.begin(ssid, password);
    while (WiFi.status() != WL_CONNECTED) 
      {
        delay(500);

      }
    server.begin();
   
  }

void loop() 
  {
    float h = dht.getHumidity();
    float t = dht.getTemperature();
    
    WiFiClient client = server.available();
      if (!client) 
        {
          return;
        }

      while(!client.available())
        {
          delay(1);
        }
   

    String request = client.readStringUntil('\r');

    client.flush();
    client.println("HTTP/1.1 200 OK");
    client.println("Content-Type: text/html");
    client.println(""); 
    client.println("<!DOCTYPE HTML>");
    client.println("<html>");
    client.println("

");
    client.println("<b>DHT22:");
 
    client.print(t);
    client.println(" &degC");
    client.print(h);
    client.print(" %\t");
    client.println("</html>");                  
    delay(1);      
 
    return;

    client.stop(); 

   }