summaryrefslogtreecommitdiff
path: root/urlencode.c
blob: 3ce102062c39997ee6bda899b522dffedba6c6d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/* Copyright (C) 2015 Luke Shumaker <lukeshu@lukeshu.com> */
#include <stdio.h>

int
main () {
	int c;
	while ((c = getchar()) != EOF) {
		if (('0' <= c && c <= '9')
		 || ('A' <= c && c <= 'Z')
		 || ('a' <= c && c <= 'z')
		){
			putchar(c);
		} else if (c == ' ') {
			putchar('+');
		} else {
			printf("%%%02X", c);
		}
	}
	return 0;
}