PHP קוד:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
FILE *pointer=fopen("Source","a+t");
void add_phone() {}
void search_FN();
void search_LN();
void show_phones() {}
int main(int argc ,char *argv[]) {
if(argc!=2) {
printf("\n\n");
printf("Welcome To The Phone Book!\n");
printf("--------------------------\n");
printf("1. Add A Number!\n2. Search A Number By First Name!\n3. Search A Number By Last Name!\n4. Show All Numbers!\n\n");
return -1;
}
int index=atoi(argv[1]);
if(!pointer) {
printf("Fetal ERROR, file could not open!\n");
return -1;
}
switch(index) {
case 1: add_phone();
break;
case 2: search_FN();
break;
case 3: search_LN();
break;
case 4: show_phones();
break;
default: printf("Your request could not be found, Please try again!\n\n");
}
return 0;
} //main
void search_FN() {
char copy[256],name[100],test[100];
printf("Please Enter The Name: ");
gets(name);
do {
fgets(copy,255,pointer);
for(int index=0;copy[index]!=' ';index++)
test[index]=copy[index];
test[index]=NULL;
if(strcmp(test,name)==0)
puts(copy);
} while(!feof(pointer));
}
void search_LN() {
char copy[256],name[100],test[100],count=0;
printf("Please Enter The Name: ");
gets(name);
do {
fgets(copy,255,pointer);
for(int index=0, retro=0;count<2;index++) {
if(count==0||copy[index]==' ') {
retro++;
if(copy[index]==' ')
count++;
continue;
}
test[index-retro]=copy[index];
}
test[index-retro]=NULL;
if(strcmp(test,name)==0)
puts(copy);
} while(!feof(pointer));
}
אוקיי התוכנית כמו שאתם רואים היא בשפת C פשוטה וטובה, מקומפלת ב - VISUAL C++ עכשיו יש לי בעיה כזאת ברגע שאני מפעיל את התוכנית ונותן לה ערכים 2 או 3 (נכון לעכשיו זה מה שאני הכנסתי) היא נותנת לי את השגיאה הסטנדרטית של וינדוס XP.
יש הצעות מה יכול להיות הבאג בתוכנית דרך אגב התחביר בקובץ Source עובד ככה:
Name family 0000000000
ורק לידע כללי, כשניסיתי להריץ פונקציה פונקציה בנפרד הם עבדו רק בתוכנית עצמה זה לא עובד לי.
ואני מודע לזה שיש פונקציות חיפוש מוכנות אבל המורה שלי אמר לא להשתמש בהם...
תודה לעוזרים.