Sample code for 30+ languages & platforms
Unicode C

Parse a URL into its Component Parts

See more HTTP Examples

Demonstrates how to parse a URL into it's component parts.

Chilkat Unicode C Downloads

Unicode C
#include <C_CkUrlW.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkUrlW url;
    const wchar_t *urlStr;

    success = FALSE;

    url = CkUrlW_Create();

    urlStr = L"https://www.amazon.com/Anarchy-State-Utopia-Robert-Nozick/dp/0465051006/ref=sr_1_1?s=books&ie=UTF8&qid=1430344305&sr=1-1&keywords=nozick#frag123";

    success = CkUrlW_ParseUrl(url,urlStr);
    // Assume success..

    wprintf(L"URL: %s\n",urlStr);
    wprintf(L"Host: %s\n",CkUrlW_host(url));
    wprintf(L"Port: %d\n",CkUrlW_getPort(url));
    wprintf(L"HostType: %s\n",CkUrlW_hostType(url));
    wprintf(L"Ssl: %d\n",CkUrlW_getSsl(url));
    wprintf(L"Path: %s\n",CkUrlW_path(url));
    wprintf(L"Query: %s\n",CkUrlW_query(url));
    wprintf(L"Frag: %s\n",CkUrlW_frag(url));
    wprintf(L"----\n");

    urlStr = L"http://matt:secret@www.chilkatsoft.com:8080/somepath.asp?test=123&size=2";

    success = CkUrlW_ParseUrl(url,urlStr);
    // Assume success..

    wprintf(L"URL: %s\n",urlStr);
    wprintf(L"Host: %s\n",CkUrlW_host(url));
    wprintf(L"Port: %d\n",CkUrlW_getPort(url));
    wprintf(L"HostType: %s\n",CkUrlW_hostType(url));
    wprintf(L"Ssl: %d\n",CkUrlW_getSsl(url));
    wprintf(L"Login: %s\n",CkUrlW_login(url));
    wprintf(L"Password: %s\n",CkUrlW_password(url));
    wprintf(L"Path: %s\n",CkUrlW_path(url));
    wprintf(L"Query: %s\n",CkUrlW_query(url));
    wprintf(L"Frag: %s\n",CkUrlW_frag(url));


    CkUrlW_Dispose(url);

    }