rot13/rot13.c
2024-02-23 12:47:39 -06:00

30 lines
404 B
C

#include<unistd.h>
#include<fcntl.h>
int main(int argc,char**argv)
{
int fd=0;
if(argc>1)
{
fd=open(argv[1],O_RDONLY);
if(fd<0)
{
write(2,"failed to open file\n",20);
fd=0;
}
}
int c;
while(read(fd,&c,1))
{
if(c>='a'&&c<='z')
c=((c-'a')+13)%26+'a';
else if(c>='A'&&c<='Z')
c=((c-'A')+13)%26+'A';
else if(c>='0'&&c<='9')
c=((c-'0')+10)%10+'0';
write(1,&c,1);
}
}