Sử dụng hàm Strupr trong C

Em gặp lỗi khi sử dụng hàm Strupr ,mọi người xem hộ em với ạ::


 #include < stdio.h>
 #include< conio.h>
 #include< string.h>
int main()
{
	char *s;
	printf("nhap vao chuoi:");
	gets(s);
	s=strupr(s);
	puts(s);
	getch();
	
}

Em cám ơn

Em bị lỗi gì, nói rõ xem?

cú pháp thì đúng nhưng nó ko chạy được anh ạ

Mình không thấy thư viện string.h trong cplusplus có chứa hàm strupr() hay strlwr()
Mình nghĩ bạn nên tự viết ra hàm đó để sử dụng thì tốt hơn.

P/s: Bạn khai báo char* s nhưng chưa cấp phát vùng nhớ cho nó mà đã gets(s) cho nó rồi.

1 Like

thực chất trong thư viện string.h không có thứ hàm strlwr() hay strupr()

nhưng không hiểu vì sao google mọi người vẫn dùng hàm đó như thường.

[ :flushed: cstring (string.h)][1]
[1]: http://www.cplusplus.com/reference/cstring/

trong thư viện string.h của visual studio có hàm _strupr_s, _strlwr_s có công dụng tương đương, khác cái cần khai báo thêm tham số kích thước bộ nhớ đệm.
_strupr_s(char* buf, int sizeBuf) với sizeBuf chính là kích thước bộ nhớ đệm của buf.
hàm kia thì tương tự.

#include <stdio.h>
#include <conio.h>
#include <string.h>
int main()
{
char s[100];
printf(“nhap vao chuoi:”);
gets(s);
strupr(s);
puts(s);
getch();

}

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?