array übergeben...
-
welche möglichkeiten gibt es da noch ein array zu übergen und dann returnen...
cu
void reverse(char *pi, int size) { char arr[20]; memset(&arr, 0, sizeof(arr)); unsigned int j=0; for(unsigned i=10; i>0; i--) { arr[j++] = pi[i]; } strcpy(pi, arr); } int main() { char arr[13]; memset(&arr, 0, sizeof(arr)); strcpy(arr, "teststring"); reverse(arr, 12); cout << arr; cin.get(); return 0; }
-
hallo, hier nix c++, hier ansi c!
mfg hohesC
bsp:
void array(char *arr) { //array bearbeiten! } int main(int argc,char **argv) { char *ap; char string[20]; ap=&string[0]; array(ap); ... ... }
damit bearbeitest du den string über den pointer direkt!
da brauchst nix returnen!!!mfg hohesC
-
hi!
is das auch so ok??
cu
void reverse(char pi[], int size) { char arr[13]; memset(&arr, 0, sizeof(arr)); unsigned int j=0; for(int i=size-1; i>=0; i--) { arr[j++] = pi[i]; } arr[j] = '\0'; // brauch ich das hier? oder reicht das wenn ich memset '\0' mache? strcpy(pi, arr); } int main(void) { char arr[] = "Max ist brav"; cout << arr << endl; rueckwaerts(arr, 12); printf("%s\n", arr); getch(); return 0;
-
ka ahnung was du machen willst,
hier der code der funktioniert und c ist!#include <stdio.h> #include <conio.h> #include <string.h> void reverse(char *pi, int size) { char arr[13]; unsigned int j=0; int i; memset(&arr, 0, sizeof(arr)); for(i=size-1; i>=0; i--) { arr[j++] = pi[i]; } strcpy(pi, arr); } int main(int argc,char **argv) { char arr[] = "Max ist brav"; puts(arr); reverse(arr, 12); puts(arr); getch(); return 0; }
mfg hohesC
-
muss ich da den string nicht mit '\0' determinieren?
cu