読者です 読者をやめる 読者になる 読者になる

定食屋おろポン

おろしポン酢と青ネギはかけ放題です

Cを勉強してみた。-文字ってマジ怖い編-

とりあえずCで便乗してみた

文字については何も語りたくない。
文字コード” ”エンコード” あたりの話は、下手に喋るとボロが出る。
まじ怖い。
今回は普通にASCIIコード('A'〜'Z'が連続しているって前提)を使って組みましたよ。

#include <stdio.h>
#include <string.h>


char around(char c);

int main(void)
{
	char str[100];
	int shift;
	int i, len;
	
	/* Input */
	printf("string?:");
	scanf("%s", str);
	printf("shift?:");
	scanf("%d", &shift);
	
	/* Shift */
	for(i = 0, len = strlen(str); i < len; i++)
	{
		str[i] -= shift;
		str[i] = around(str[i]);
	}
	printf("and:%s\n", str);
	
	return 0;
}

char around(char c)
{
	if ( c < 'A' )
	{
		c += ('Z' - 'A' + 1);
	}
	return c; /* koko */
}

さすがにこれは10分も要らんわーとか言いながら数分で書き上げたら、/* koko */の部分を書き忘れて上手く動かず、原因を見つけるのに10分くらい掛かったのは秘密。
それくらい教えてよコンパイラ。。