Skip to content

Instantly share code, notes, and snippets.

@jjjjeeffff
Forked from jcsalterego/.gitignore
Created June 14, 2009 14:58
Show Gist options
  • Save jjjjeeffff/129713 to your computer and use it in GitHub Desktop.
Save jjjjeeffff/129713 to your computer and use it in GitHub Desktop.
/**
* A bastardization of: http://www.otierney.net/objective-c.html
*/
#import <stdlib.h>
#import <stdio.h>
#import <Foundation/NSObject.h>
@interface Fraction: NSObject {
int numerator;
int denominator;
}
-(void) print;
-(void) setNumerator: (int) n;
-(void) setDenominator: (int) d;
-(void) setNumerator: (int) n andDenominator: (int) d;
-(int) numerator;
-(int) denominator;
@end
// scope (returnType) methodName: (parameter1Type) parameter1Name;
@implementation Fraction
-(void) print
{
printf("%i/%i", numerator, denominator);
}
-(void) setNumerator: (int) n
{
numerator = n;
}
-(void) setDenominator: (int) d
{
denominator = d;
}
-(void) setNumerator: (int) n andDenominator: (int) d
{
numerator = n;
denominator = d;
}
-(int) denominator
{
return denominator;
}
-(int) numerator
{
return numerator;
}
@end
int main (int argc, const char **argv)
{
Fraction *frac = [[Fraction alloc] init];
[frac setNumerator: 1];
[frac setDenominator: 3];
[frac setNumerator: 1
andDenominator: 5];
printf("The fraction is: ");
[frac print];
printf("\n");
[frac release];
return EXIT_SUCCESS;
}
CC=gcc
CFLAGS=-Wall
LFLAGS=-lobjc -framework Foundation
OBJS=main.o
app: $(OBJS)
$(CC) $(LFLAGS) $(OBJS) -o app
main.o: main.m
$(CC) -c main.m
clean:
rm -f *~ *.o app
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment