Μοιάζει πολύ με την συνάρτηση strcpy .
Χρησιμοποιείται και αυτή για την αντιγραφή αλφαριθμητικών μόνο η διαφορά τους είναι ότι η συνάρτηση strncpy έχει μία παράμετρο παραπάνω , η οποία δηλώνει το επιθυμητό πλήθος χαρακτήρων που θα αντιγραφτεί.
Σύνταξη :
strncpy ( alphari8mtiko1, alphari8mtiko2, pli9os);
Παράδειγμα :
Εμφάνιση :
ΠΡΟΣΟΧΗ!!!
Η τιμή του pli9os αν είναι μικρότερη ή ίση από το μηδέν τότε δεν θα προστεθεί ο τερματικός χαρακτήρας κατά την αντιγραφή.
Αν είναι μεγαλύτερο από το μηδέν τότε θα αντιγραφτούν τερματικοί χαρακτήρες μέχρι να συμπληρώσουν το πλήθος.
Χρησιμοποιείται και αυτή για την αντιγραφή αλφαριθμητικών μόνο η διαφορά τους είναι ότι η συνάρτηση strncpy έχει μία παράμετρο παραπάνω , η οποία δηλώνει το επιθυμητό πλήθος χαρακτήρων που θα αντιγραφτεί.
Σύνταξη :
strncpy ( alphari8mtiko1, alphari8mtiko2, pli9os);
Παράδειγμα :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include<stdio.h> #include<string.h> int main(void) { char alphari8mtiko1[50]; char alphari8mtiko2[50]; int pli9os; printf("Dose keimeno : \n"); fgets(alphari8mtiko2,sizeof(alphari8mtiko2),stdin); printf("Dose enan akeraio ari8mo : \n"); scanf("%d",&pli9os); strncpy(alphari8mtiko1,alphari8mtiko2,pli9os); printf("\nTo teliko keimeno einai to exis : %s \n",alphari8mtiko1); printf("To arxiko keimeno einai to exis : %s \n",alphari8mtiko2); system("pause"); return 0; } |
Εμφάνιση :
ΠΡΟΣΟΧΗ!!!
Η τιμή του pli9os αν είναι μικρότερη ή ίση από το μηδέν τότε δεν θα προστεθεί ο τερματικός χαρακτήρας κατά την αντιγραφή.
Αν είναι μεγαλύτερο από το μηδέν τότε θα αντιγραφτούν τερματικοί χαρακτήρες μέχρι να συμπληρώσουν το πλήθος.