Saya mencoba menulis fungsi, huruf besar, yang mengubah semua karakter huruf kecil dalam string menjadi huruf besar yang setara.
Namun, saya mendapatkan kesalahan Bus 10 dalam kode saya. Saya tahu bahwa string literal tidak dapat dimodifikasi di C; jadi, saya tidak yakin apakah ini pendekatan yang tepat.
Kode saya di bawah:
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
#include <string.h>
int uppercase(char source[])
{
int i;
for(i=0; i<=strlen(source); ++i)
if (source[i]>= 'a' && source[i]<= 'z')
source[i]= source[i]-'a' +'A';
else
source[i]=source[i];
}
int main(){
uppercase("cold");
return 0;
}
Idealnya fungsi ini harus mengembalikan COLD. Saya kira kesalahannya terletak pada seluruh pernyataan if saya.
source[i] = source[i]
?? - person Kerrek SB   schedule 22.12.2013