manpagez: man pages & more
man curl_url(3)
Home | html | info | man
curl_url(3)                Library Functions Manual                curl_url(3)


NAME

       curl_url - create a URL handle


SYNOPSIS

       #include <curl/curl.h>

       CURLU *curl_url();


DESCRIPTION

       This function allocates a URL object and returns a CURLU handle for it,
       to be used as input to all other URL API functions.

       This is a handle to a URL object that holds or can hold URL components
       for a single URL. When the object is first created, there is of course
       no components stored. They are then set in the object with the
       curl_url_set(3) function.

       The object must be destroyed with a call to = when no
       longer needed.


PROTOCOLS

       This functionality affects all supported protocols


EXAMPLE

       int main(void)
       {
         CURLUcode rc;
         CURLU *url = curl_url();
         rc = curl_url_set(url, CURLUPART_URL, "https://example.com", 0);
         if(!rc) {
           char *scheme;
           rc = curl_url_get(url, CURLUPART_SCHEME, &scheme, 0);
           if(!rc) {
             printf("the scheme is %s\n", scheme);
             curl_free(scheme);
           }
           curl_url_cleanup(url);
         }
       }


AVAILABILITY

       Added in curl 7.62.0


RETURN VALUE

       Returns a CURLU * if successful, or NULL if out of memory.


SEE ALSO

       CURLOPT_CURLU(3), curl_url_cleanup(3), curl_url_dup(3),
       curl_url_get(3), curl_url_set(3), curl_url_strerror(3)

libcurl                           2026-03-23                       curl_url(3)

curl 8.19.0 - Generated Tue Mar 24 15:59:16 CDT 2026
© manpagez.com 2000-2026
Individual documents may contain additional copyright information.