후디니안에서 쓸 수 있는 함수를 만들어 보았다. 

후디니안에서 존재하는 함수중에 strcmp() 함수가 있는데 두 개의 문자열을 인수로 받아서 두 문자열이 같으면 0을 리턴, 첫번째 문자열이 앞서면(ASCII 상에서) 1을 리턴, 두번째가 앞서면 -1을 리턴하는 함수이다.

그런데, 숫자말고 앞서는 문자열을 출력하고싶어서 strCompare() 라는 함수를 만들어 보았다.



현재 여기서는 bcdf라는 문자열이 앞선다.



여기서는 두 문자열의 같다.


소스코드를 만들어보니까 C++ 언어와 정말 유사하다고 생각했다.

그런데 안되는 부분이 있었다. 함수를 만들면서 반환값이 배열값(배열의 첫번째 주소값)으로 하는 함수를 만들고 싶었는데... float[] asdf() 이런식으로.. float* asdf() 이것도 안되고... 문자열 반환도 주소값을 반환하는건데 배열은 왜...?


여하튼, 컴파일 에러가 난다. 아무래도 후디니 안에서 쓰는 함수의 경우, 반환값이 배열일 필요가 없어서 그런가보다.

attribute create 노드를 봐도 자료형 타입에 배열이 없으니..

그리고, 후디니 안에서 쓰는 함수를 만들 때, int형 자료형 타입을 쓰지못한다... 계속 컴파일 에러가 나서 소스코드를 세밀히 살펴보아도 아무 문제가 안보였는데 int형 자료형 타입을 써서 그러했다.. int형을 왜 못쓰게했는지 그 까닭을 모르겠다.

또한, 변수를 만들때, 자료형 타입을 입력하지 않으면 저절로 float형이 들어간다. 

※ 변수를 초기화해주지 않으면 컴파일 에러발생.

Posted by scii
: